Minimum order sizes, signature quirks, restoring positions after a restart, double-recorded fills, key handling. Read how each one was hit and fixed across 11 exchanges, in a full FastAPI codebase with 1,961 tests (as of v1.19.23). Start in paper mode, then switch to live.
↑ Implementation kit size indicators. This is a learning kit — not investment advice. Source code provided for engineering education.
What overseas tools and domestic services can't do, AutoTrader can
| Feature | Company A $59/mo |
Company B Monthly |
AutoTrader One-time |
|---|---|---|---|
| Japan exchanges bitFlyer, Coincheck, Zaif |
❌ | △ Partial |
✅ |
| Zaif support | ❌ | ❌ | ✅ |
| Mobile management | ✅ | ❌ | ✅ |
| Monthly fee | $37-$99 | Monthly | None (one-time) |
| Custom logic | ✅ | ❌ | ✅ |
| DCA / Rule-based / Grid | ✅ | ❌ | ✅ |
* AutoTrader is currently the only mobile-managed bot tool supporting Japanese exchanges (bitFlyer, Coincheck, Zaif)
* Developer's own live-account results (live since 2026-06-12, ongoing — live bots only, paper-trading bot excluded).
* Win rate and PnL are based on closed trades; capital is small (approx. ¥100k / $700). Profits are not guaranteed and losses can occur.
A quick walkthrough from home to bot detail
* Mockup screens (actual app uses the same UI)

Home

Bot List

Create Bot

Bot Detail

Charts

Backtest

Alerts

Settings
Everything you need for automated crypto trading, from frontend to backend
Rule-based / DCA / Tsumitate / Scalping / Market Making / Grid / AI-LLM / Arbitrage
Buy-only scheduled investing — daily, weekly, or monthly. Same UX as Coincheck and bitFlyer's auto-invest feature. Buys a fixed amount on a fixed schedule (JST), regardless of price. Set a total cap for budget control, and liquidate with one tap whenever you want to take profit.
We measured the BTC spread at a major Japanese "sales shop" (販売所) exchange: 5.4%. AutoTrader with orderbook exchanges (bitbank / Binance Japan / Zaif) pays just 0.12% taker fee.
¥10k/month × 10 years = ¥63,360 saved
¥50k/month × 10 years = ¥316,800 saved
¥100k/month × 10 years = ¥633,600 saved
※ "Sales shop" (販売所) exchanges advertise zero trading fees, but secure 3–8% profit through the spread between buy and sell prices. For long-term DCA, direct orderbook access is always more efficient. Measure your shop's spread with (buy − sell) ÷ sell × 100.
TP/SL auto-monitoring, daily loss limits, consecutive loss stop, drawdown limits, price spike detection
React Native (Expo) with 8 screens. Dark theme, bilingual (EN/JP) support
Instant mobile alerts on BUY/SELL. Shows quantity x price = total
Customize with confidence. One-command quality check with pytest
Run it on your own PC, Oracle Cloud Always Free, a VPS, or Render
6 domestic (Japan) + 5 international exchanges (Recommended plan and above)
Updated Aug 2026: Kraken / Coinbase (exited Japan) and Bybit / Bitget (ending service for Japan residents) are no longer supported.
API keys are encrypted at rest and decrypted only when an order is placed. Every release is reviewed for security before shipping.
Share your companion on social media. The care screen gets a Share section: one card image with the companion, its name, stage and type, and the days since it arrived, handed to X, Threads or any other share target. No amounts, P&L, exchange or bot details appear on the card or in the text, and the image is rendered on your device. Trading logic is unchanged.
Read more →AI bots now look at the multi-day trend. The prompt gets the 72-candle change and the SMA50 ratio, plus a rule not to buy just because price sits near the 24-hour low. In late October a bot bought three times into a falling market. The admin summary API also reports wins, losses and win rate for the period. Other strategies and the DB are unchanged.
Read more →Stop-loss and take-profit now work on AI bots. The values set when creating an AI bot were not being checked. Trades recovered after a delayed fill confirmation now also record P&L and the re-entry wait.
Details →Start and stop now live on the detail screen. We removed the switch from the bot cards: a press also reached the card, opened the detail screen, and a second press on Start stopped the bot. The API now takes an explicit start or stop, so sending the same action twice changes nothing. Drawdown reasons are shown as amounts when the peak profit is tiny, and API keys are masked in server logs.
Read more →Seasons and time of day for your companion. By the device date it wears a Santa hat from Dec 1 to Dec 25 and a kagami-mochi from Dec 26 to Jan 7 (the year is ignored). Its behaviour also follows the clock: in the morning (5–8) it sometimes yawns at the edge, in the evening (17–21) it walks slowly, and late at night (22–4) it walks even slower and sits down to doze when it reaches the edge. Care and cleaning still work while it dozes. Trading, care history and experience are unchanged. Also fixed: on iPhone the "close" button of the care screen was hidden under the clock, and a one-line note next to the droppings now says they count only unread warnings and errors. No changes to trading logic or the database.
Read more →Unread errors are big droppings. Your companion's droppings count your unread warning and error alerts; error alerts now show as big ones (first in the care screen, and the dropping next to the companion on the bot list grows if there is at least one). Cleaning a big one earns a relieved "phew". Also fixed: stopping and restarting a bot no longer makes the P/L on cards, details and analytics look like it starts from zero (P/L, win rate and counts stay cumulative; only the drawdown auto-stop and the profit target count from the restart). The return page after leaving Stripe Checkout now goes back to the sales page instead of the API's JSON. No changes to trading logic or the database.
Read more →The exit bar on the bot list too. On the home list, a running bot with a position and a live price now shows a one-line bar in place of the take-profit / stop-loss price lines: the distance from the current price at each end (percent), with the stop-loss and take-profit prices below. Same values as the bar in bot details (DCA, rule and scalping bots; not shown for AI, grid, market-making, arbitrage, scheduled-buy or dynamic-exit bots). Numbers now move: the total P/L on the home screen rolls up from zero when the app opens and rolls only the changed digits after a close; unrealized P/L on the list and the current price in the detail bar flash green or red on each update, and the bar's marker springs to its new position. Also fixed: right after launch, the list's current price and unrealized P/L stayed blank until pull-to-refresh. No changes to trading logic or the database.
Read more →Stop-loss, current price and take-profit on one bar. Below "Next action" in bot details, a bar shows where the current price sits between your stop-loss and take-profit, with the distance to each (percent, and the P/L if the position closed there). Charts in the Recommended plan and above draw lines for average entry, take-profit, stop-loss and the trailing stop (DCA, rule and scalping bots; not shown for AI, grid or dynamic-exit bots). Your companion now reacts when you pet it and cheers after a cleanup. The AI strategy is instructed to write its reasons in Japanese. Sales API keys are accepted via the X-API-Key header only. No changes to trading logic or the database. The iPhone Expo Go route still waits for Expo Go 58.
Read more →Meet your companion. A small creature now walks along the bottom of the bot list and grows with how you run things: days with bots running, days you cared for it, days without incidents (profit counts only by sign, with a small capped weight, and nothing it does ever touches trading). Its droppings are your unread warning and error alerts; cleaning marks them read. You can give it a name. Also in this release: the self-check now starts with "server reachable" and tells apart phone-side localhost, a server that is not running, and a browser blocking local connections; the admin API accepts its key in the X-API-Key header only; and the bitbank / BitTrade capability table matches what the public APIs actually do. The iPhone Expo Go path is waiting for Expo Go 58 in the App Store; please use the web build for now.
Read more →Reworked the bot-detail editor and the regime table on Home. The edit form on the bot-detail screen now opens right under the action bar, with Save and Cancel repeated at the bottom (no more scrolling back to the top to save), plus a "back to top" button. The regime performance card on Home is now a strategy × regime (uptrend / range / downtrend) table with one plain sentence per strategy; cells with fewer than 10 closed trades are dimmed. Fixed the Web build calling the regime and market APIs before the connection settings had loaded (so the card never appeared). Removed BitTrade SUI/JPY from the pair list due to low volume (bitbank SUI/JPY stays). Behind Cloudflare, rate limits are now counted per visitor IP instead of per relay. No DB migration.
Read more →
Rate-limited the self-check and tidied the guides. The exchange and AI parts of the self-check now require 60 seconds since the previous run (so repeated clicks do not spend AI usage or exchange rate limits). Admin APIs also accept the key in an X-API-Key header (the old form still works for now). The setup guide now states that the Oracle setup scripts are included in the Recommended and Full plans, and no longer suggests Render Blueprint (render.yaml has been removed from the ZIP). Unused TRADE_MODE was removed from .env.example. Also fixed a startup data migration that disabled the Standard plan on the sales page (a seller-side issue; it does not affect installed copies). No DB migration.
Added a "self-check" to Settings > Diagnostics. One button checks, in order, that the exchange is reachable, the balance can be fetched, a paper bot runs once, the webhook arrives, and your registered AI keys work, with a ✓/✗/skip mark and a one-line fix on each row. No real orders are placed; the throwaway check bot is removed with its records afterwards (your own bots are never deleted). The AI key check sends one short request per registered provider, so it incurs that provider's usage charge. 1-2 paper fill notifications may arrive during the check. The Standard plan does not include the webhook/AI parts, so those two rows show skip. No DB migration.
Added a demo you can try before buying. From the Japanese sales page you can walk through the web app (Japanese UI) with made-up data (4 bots, 2 of them at a loss). Entering keys, placing orders and saving settings are disabled. Also replaced the retired Gemini models (they returned 404, so AI bots using Gemini held on every cycle) with their successors and remapped saved settings automatically; empty responses and 503s are handled too. No DB migration.
A release that exercised everything buyers receive. Paper trading is now ON by default when creating a bot (Japanese exchanges have no testnet; a bot with paper OFF places real orders). Fixed TradingView webhook BUY orders using the yen amount as the coin quantity, backtests always showing zero trades because no market data was ever loaded, and the app being unable to register AI keys. Bots whose order size is below the exchange's minimum for that pair are now rejected with the reason. GMO Coin (bots could not be created) and 7 pairs with no price feed or volume were removed (Standard plan: 3 Japanese exchanges). Totals that mixed JPY and USDT are now shown per currency, and the tax CSV fee currency, Japan-time year boundary and paper-trade exclusion were fixed. The Anthropic option for the AI strategy is now Claude Sonnet 5.5. All plans include python backend/quickstart.py, which sets up, starts and connects in one step.
The daily Slack summary now covers the previous full day in Japan time and counts live bots only. Before, trades between 00:00 and 09:00 JST were missed, paper fills were mixed in, and event times were shown in UTC. The Slack events endpoint now rejects every request whose signature cannot be verified with 401 (set SLACK_SIGNING_SECRET if you use the Slack integration), and a new test walks every route to catch endpoints that forgot authentication. Also: paper bots decide on budget only, bots with long intervals are no longer flagged as stopped, and requests are recorded to logs/access.log. No database migration.
Fixed the AI strategy failing on every call with Groq / OpenAI. Forcing a JSON response requires the word "json" in the request; a prompt cleanup on 9/24 removed it, so every call was rejected with HTTP 400. The client now guarantees the word itself instead of relying on the prompt text (10/10 successes against the real API), and failures show the actual HTTP code instead of "failed after 3 retries". Also fixed: the web app's bot screen went blank when opened directly or reloaded (it called the API before the connection settings had loaded); the grid strategy missed take-profit for an adjacent pair when price crossed several levels at once; market making and DCA could keep buying while holding a position whose average entry price was 0. The two helper scripts in the package no longer carry the developer's API key as a default (that key has been revoked; buyers' installs are unaffected). The sales-management endpoints (customer list, product create/update, support registration) now require the API key (only relevant if you run the sales features yourself). No DB migration. 1,417 automated tests passing.
The database now forbids recording the same fill twice. A partial unique index on trades (exchange × symbol × order id, filled rows only) is declared and created automatically at startup; the engine and exchange sync adopt an existing row instead of inserting a duplicate (the same shape as the 140 duplicates found last release). Quantity fixes now realign the trade value too. The app's home refresh used to rebuild an exchange client and reload the market list on every call; it now shares the scheduler's cached client and the balance endpoint no longer blocks on synchronous exchange calls. Measured on the operator's server: first ticker call 2.95 s → 0.02 s, and other APIs keep answering while balances load (the main cause of the "server offline" banner). Seven in-app sales links now point to the current LP. The index is created automatically at startup (the startup log tells you if it cannot be). 1,379 automated tests passing.
Fees are now recorded as the amount the exchange actually charged, and cumulative PnL has been recomputed. Every bot used to record a 0.1% table estimate, about 47% above the account's effective rate (0.068% on Binance Japan), and one path wrote BTC-denominated buy fees into the JPY column unconverted. Order recording, exchange sync and fill recovery now all use the actual charge (converted to the quote currency), and the fee-loss guard uses the account's effective rate too (exchanges that cannot report it fall back to the table). The operator's historical trades were corrected from Binance history, so the public stats on this page are the recomputed figures (total fees ¥7,671 → ¥7,119, total PnL −¥1,852 → −¥1,283). The same day, 140 duplicate fills recorded twice for one order between April and July were excluded from the stats and 69 rows with broken quantities were corrected to the exchange's per-order truth, so total PnL was recomputed again (−¥1,283 → −¥2,234, closed trades 421 → 404 — a correction toward the pessimistic side). Also: API timestamps are always tz-aware UTC, and the app's "server offline" banner reconnects on tap and clears itself once the server is back. No DB migration. 1,319 automated tests passing.
Removed the operator's legacy hosting domain that was still baked into the distributed package (the article LP links for 7 platforms and the help URL shown when the DB trial expires). Links now point to the current LP and the help pointer to the bundled setup guide. A test now guarantees the package never references the operator's servers. No functional changes.
Market-making take-profit is now measured from the entry price, and the AI strategy receives RSI, rate-of-change and SMA20 ratio as inputs. Paper-trade fills are now capped at the market price, and total PnL, win rate, trade count and the public LP stats are all computed from live closed trades only (deleted bots included, paper excluded; the LP total PnL changes to the live-only figure). Full thread stacks are dumped when a worker stops responding.
Added a fee breakdown (per bot × exchange, 30d / 90d / all time) to the Total PnL card on Home; bots whose gross profit is positive but wiped out by fees are highlighted in red. The balance card now shows deployed vs. free capital with a per-bot list. Also fixed the "server not connected" error that appeared only on the first load (effect ordering), and a double count that inflated the cumulative fee figure by about 1.6× (in-app PnL figures are unchanged; the public stats on this page — cumulative PnL, win rate and trade count — now use the same trade-based definition as the app and exclude paper (simulated) bots, so the values shown here change). No change to the trading engine. No DB migration or APK re-install required. 1,214 automated tests passing.
Upgraded to Expo SDK 57. Expo Go on iPhone only supports the latest SDK and cannot be downgraded, so a project left on SDK 54 stopped opening with "Project is incompatible". The recommended way to use the app on a phone is now the web version (Add to Home Screen); Expo Go is repositioned as a developer tool. Removed look-ahead bias from backtests (signals only on closed candles, fills at the next candle's open), so historical backtest numbers will come out lower — this removes an edge you could not get in live trading; the trading logic itself is unchanged. Rate limiting (10/min) is now actually enforced on payment endpoints.
Added payment in XYM (Symbol). Each plan now has a "Pay with XYM" button: the JPY price is converted at the current rate (Zaif) and locked for 15 minutes — no discount. Paste the address, amount and message (order ID) into your Symbol wallet; once the transfer is confirmed on-chain, the download email is sent automatically within 60 seconds. We only receive XYM — no exchange or custody (About XYM payments). Also fixed the post-purchase email wording to match the no-individual-support policy. No change to the trading engine. No DB migration or APK re-install required. 1,178 automated tests passing.
Major update: support moves from humans to docs and code. Every plan now bundles doctor.py, a setup self-diagnosis tool (checks Python / dependencies / .env / DB / migrations; its output is designed to be pasted into an AI for troubleshooting; secrets are never printed). The backend gains a Healthchecks.io heartbeat (one env var to enable; a no-op when unset). The Full plan newly bundles the troubleshooting encyclopedia (27 entries) and the 3-layer monitoring playbook — production incidents since March 2026 and misdiagnoses, indexed by symptom. All 1,098 automated tests passing. No DB migration or APK update required.
View details →Fixes for the "looks alive but silently stalled" family. The AI strategy now receives price, 24h range and volume, so its decisions are grounded in actual market data (previously no data was passed and the model correctly refused to trade, freezing on HOLD every cycle). Also added a DB connection timeout to stop intermittent server unresponsiveness, and the bot-detail screen now shows the cause and remedy on load failures with a reload button. All 1,064 automated tests passing.
View details →Emergency patch for the AI strategy. Groq discontinued its older models (Llama 3.3 and others), which broke news analysis on every call. Switched to the current model (GPT-OSS 120B) and old model names stored in bot settings are remapped automatically — no configuration change needed. Errors still fall back to HOLD (the safe side), so trading was never at risk. All 1,050 automated tests passing.
View details →Stability patch. Added an absolute-amount threshold to the drawdown check, eliminating false emergency stops on tiny PnL fluctuations. Improved AI strategy error logging (exception type is always recorded). Also includes maintenance fixes since Aug 4: alembic connection guard, restart dead-detection race, log index performance. Test suite expanded from 960 to 1319 cases.
View details →Exchange and trading-pair support refreshed to the August 2026 state. Exchanges no longer serving Japan (Kraken/Coinbase: market exit; Bybit/Bitget: ending service for Japan residents) now block new bot creation (existing bots and stored API keys are unaffected), and FSA-registered BitTrade (ex-Huobi Japan, zero spot fees on major pairs) was added, for a lineup of 11 exchanges. Pairs track the MATIC→POL rebrand and add SUI/JPY, verified against each exchange's public API. New strategy × market-regime performance card on the home screen (elite plan; appears automatically once 120 days of trade history accumulate). Fixed a defect where 15-minute-interval bots were misjudged as dead on every restart and could never recover, plus a worker-timeout chain triggered by periodic forced GC. No DB migration or APK update required. All 1,029 automated tests passing.
View details →Major arbitrage-strategy overhaul based on live-fire verification. Fixed completed arb pairs lingering on the books as positions that no longer exist, plus a double-counted actual fee; in-kind fees (charged in the base currency) are now recorded as the true received amount. The MARKET card on the bot detail screen now shows inventory on both exchanges, remaining cycles, inventory value, and an exit estimate, so the pre-funded inventory model is visible at a glance. The config advisor now blocks fee-losing arbitrage settings at creation and warns about low inventory with concrete amounts. Also corrected the in-app price display (¥9,790 → ¥9,800). Default trading behaviour unchanged; no DB migration or APK update required. All 1,010 automated tests passing.
View details →Fixed a trade-sync defect. The fetch window for fill history could stall at an old position, so an order that was still live on the exchange was misjudged as "not found" and marked cancelled. Fills that landed afterwards were never recorded, leaving a position on the books that no longer existed and blocking other bots sharing the same account from closing their own positions. The window now tracks the present, and orders outside the verified range are no longer marked cancelled. Backend-only change: no DB migration or APK update required. All 1196 automated tests passing.
View details →Fixed a defect that could block position exits. When a bot reached its maximum position count, the gate rejected not only new entries but also the SELL that closes an existing position, leaving bots unable to exit; the limit now applies to new buys only, as intended. Shared-account SELL clamp logs now surface likely phantom-position bots and a reconcile path. The default endpoint used by update.sh has moved to the new distribution server (see the release note if you are on v1.17.1 or earlier). Backend-only change: no DB migration or APK update required.
View details →Fixed duplicate trade-history imports. A fill sharing the same order ID but recorded outside the 48h reconciliation window (with a slightly different amount after fees) was mistakenly treated as new and imported twice, causing phantom position increases, cascading balance-shortage alerts, and blocked orders on other bots. Added a regression test. Backend-only change: no DB migration or APK update required.
View details →Stability improvements for payments and monitoring. Fixed an issue where a new major version of the stripe library caused all Stripe webhooks to fail (webhook payloads are now read library-independently from the signature-verified body). After a SELL fill, if the exchange is slow to reflect the trade, the engine now automatically re-syncs in subsequent cycles and self-heals within minutes, instead of leaving the books out of sync until the next daily batch. Added Stripe webhook delivery health to the daily summary (when payment integration is configured), and backup notifications are now sent only on failure. Backend-only change: no DB migration or APK update required. All 946 automated tests passing.
View details →Released an install-free web app (PWA) that runs on both iOS and Android. Just open app.ponfreelance.com in a browser and "Add to Home Screen" to use it like a native app. Connection settings can be auto-filled via a QR / link, so a second device needs zero manual entry. Added an onboarding screen for the unconfigured state, a custom domain, and removed the hard-coded default backend URL to optimize for fully self-hosted setups. No backend DB schema changes; fully backward compatible. Existing saved settings are preserved.
View details →Daily and weekly loss limits can now be expressed as a percentage of a bot's budget, making the risk ceiling currency-independent (JPY / USDT). This fixes cases where the previous absolute, single-currency thresholds could trigger a false emergency stop on a small real loss. A bot's capital budget is now editable from the detail screen after creation, and the home balance card shows each account's total budget, headroom, and any over-allocation. All 912 tests passing. Includes UI changes, so the APK is also updated (installing the latest APK is recommended).
View details →Full audit of every strategy's trading logic with fixes for order-placement bugs. Entries, take-profits, and stop-losses now use market orders by default, eliminating cases where a stop-loss limit order sat unfilled on the book during sharp moves. The arbitrage strategy was rebuilt to actually buy on the cheaper exchange and sell on the pricier one simultaneously (pre-positioned inventory model). Backend-only change: no DB migration or APK redistribution required. All 879 tests passing.
View details →Hardens shared-account safety (multiple bots on one exchange account). Before placing a SELL, each bot now reserves the holdings of other bots so the first seller can no longer consume their inventory (surfaced as a notification and a skipped cycle instead of a loss). Balance-shortage alerts also became actionable: they identify which bot holds a position with no exchange backing and suggest the repair procedure. Backend-only change; no DB migration or APK redistribution. All tests passing.
View details →Adds a Settings Advisor (objective config diagnostics plus a chat advisor that uses your own LLM key) and Paper Trading (a practice mode that records exactly like production without placing real orders). Also hardens safety: automatic detection and stop on negative position, a fix for Zaif fill quantity units, and prevention of duplicate scheduled jobs in multi-instance setups. All 846 tests passing.
View details →Run multiple bots on a single exchange account safely with a per-bot capital budget. Buys exceeding the budget are skipped before ordering, each bot only sells what it bought, and trades that can't be confidently attributed are isolated from P&L. Also resolves the Stripe checkout webhook timeout (503), adds error monitoring (Sentry), and improves trade-reconciliation and fee-proration accuracy. 771 tests passing.
View details →Adds a fee-loss SELL guard (default ON, applied to existing bots too). The rule strategy's signal-reversal SELL is now held until the configured TP/SL is reached, and a per-order backstop skips SELL when unrealized gain is below round-trip taker fees. Forced exits (TP / SL / trailing / range-exit) always pass through. Stops the chain of -0.1% to -0.15% SELLs that were bleeding 0.3% in fees every cycle. 692 tests passing.
View details →Critical fix for the grid strategy: previously, price oscillating around a single level fired BUY/SELL pairs at near-identical prices, producing zero-profit trades while fees ate into capital. Introduces per-level inventory tracking (filled_levels) so SELL only fires when the level directly below is held, and BUY only fires on unheld levels. Also covers the recovery path (Zaif / bitbank), skip-level firing on sharp moves, and IEEE float precision edge cases. Recommended for all grid-strategy users.
View details →Adds a trade-marker chart to the BOT detail screen (Advanced and above). Buy entries, take-profit and stop-loss exits are overlaid on the candlestick chart as triangular markers, so you can see at a glance where each trade fired. Also aligns the 5b balance-shortage threshold with the scheduler audit, suppressing false-positive ANOMALY_DETECTED that hit DCA savings bots.
View details →Structural stability improvements. Roots out POSITION_MISMATCH bursts, dummy-zero display on tsumitate (DCA savings) bots, the "reconcile-and-stop" race, and false-positive emergency stops triggered by sync. The legacy position cache columns are physically removed so Trade history is the single source of truth.
View details →Adds a dynamic exit strategy (β): opt-in ATR-linked TP/SL + trailing stop + immediate exit on regime anomaly (off by default). The BOT detail screen consolidates 7 scattered buttons into an ActionBar with edit mode and "⋯" menu. Internally, position cache is replaced with Trade-derived calculations for stronger consistency.
View details →BOT detail screen now shows the bot's current operational state ("waiting for entry", "holding position", etc.) so it is obvious what the bot will do next. TRADES rows support long-press to copy and text selection, making it easy to paste the order_id into the exchange UI for cross-checking. Also a safer dust-SELL skip path: when pos_open lies outside the dust threshold, the bot no longer wipes out the entire position.
View details →Critical bug fix: rule/grid strategies misinterpreted the "order amount" (JPY/USDT) as a crypto quantity, causing BUY orders to be silently skipped by the risk manager. Also adds a v2 regime-gated rule strategy (auto-switching between trend/range/anomaly), a "Resync with exchange" button on the bot detail screen, and token-authenticated update.sh.
View details →Hotfix for v1.11.0: BOT detail screen would crash on open due to a leftover reference from the removed manual-position editor. Test suite expanded from 229 to 452 tests.
View details →"30-day trap" mitigation. New `/api/health/db` endpoint detects free-tier PostgreSQL expiry. Setup guide gains a DB-selection section. Oracle Cloud migration kit for permanent $0 DB hosting (no longer distributed on BOOTH).
View details →Fixed an issue where one physical fill was duplicated across all bots running on the same API key + symbol, causing repeated false balance_shortage alerts. Operational guidance for multi-bot setups also added.
View details →Hotfix for 8 bugs / UX issues discovered during v1.10.0 live testing. Zaif/Binance fee-unit mismatch, auth error loop, tsumitate dead-state false positive, edit UI, and more. No new features.
View details →New Tsumitate (recurring buy) strategy. Pick daily/weekly/monthly frequency with JST time, cap total investment, works on all supported exchanges (including ticker-only ones without OHLCV).
View details →Major overhaul of order precision, retry logic, and position sync. Fixes the "awaiting fill" deadlock, adds amount-only mode to manual position adjust.
View details →Editable DCA trailing/relaxed TP with real-time state display, plus cleaner number formatting (no scientific notation, unified zero display).
View details →Exchange sync bug fixes, DCA trailing/relaxed TP edit UI, three new observability alerts, hourly integrity audit.
View details →DCA strategy adds trailing take-profit and time relaxation, dead BOT auto-recovery, total PnL includes deleted BOT trades.
View details →Stability hardening: 418 IP ban auto-detection, concurrent BOT execution limit, WebSocket reconnection fix, polling duplicate guard.
View details →Binance Japan support (9 JPY pairs), synced all exchange pairs with ccxt, auto-backoff on rate limits, Render memory optimization.
View details →SELL order safety check, abnormal trade attribution prevention in exchange sync, new PnL reset admin API.
View details →Signal confirmation filter and auto trend/range detection, scheduled position reconciliation, fully reworked Zaif fill detection.
View details →Exchange trade history auto-sync (all 14 exchanges supported at the time), position-level PnL management, differential upgrade checkout, update.sh added.
View details →Custom candlestick charts (XYM/JPY etc.), bitbank exchange added, post-trade balance reconciliation, accurate per-exchange strategy filtering.
View details →Standalone DCA strategy, NOWPayments crypto payments, market ticker display, backtest engine, BUY/SELL push notifications.
View details →Start with the Light plan ($19) to try it out. Upgrade anytime from within the app.
3 domestic exchange API integration samples
11 API × 8 algorithms × 1,800+ test cases
* The troubleshooting encyclopedia, monitoring playbook and differential updater are Full-plan only.
Buy with credit card — ¥9,800Recommended + troubleshooting encyclopedia / monitoring playbook / updater
How to Purchase
Paying with XYM (Symbol)
Details: XYM payment policy
Not arrived? Contact X DM.
As this is a digital product, returns and refunds are not accepted after download (if a file is clearly defective, e.g. corrupted, contact us within 7 days of purchase). See Returns & Refunds for details.
Get detailed release notes early. Cancel anytime.
* Purchased source code is yours to keep forever. Membership is an optional add-on for those who want to keep peeking at the developer's real operations after purchase — it does not compete with one-time purchases.
Subscribe on notenote membership (credit card)
Enter your purchase email and we will email the download link to that address
Enter your purchase email and we will email your upgrade options (pay only the difference) to that address
Common questions about purchasing, setup, and running your bots
update.sh differential updater. To hear about new releases, the note membership ($5/mo, open to any plan) delivers the release notes. Pre-purchase questions, missing download links, and upgrades: X DM.
11 API integration samples, 8 algorithm implementations, 1,800+ test cases.
FastAPI × React Native implementation learning kit, fully open source.
Credit card (Stripe) or XYM (Symbol). Membership subscription via note (credit card).
This product is a FastAPI × React Native external-API-integration app implementation learning kit (source code package). If you choose to run the included code, you may invoke cryptocurrency exchange APIs at your own discretion, but this product itself is NOT any of the following:
This product is provided as a software development learning resource and development tool. It is to be used at the purchaser's own judgment and responsibility.
We strongly recommend trading only with funds you can afford to lose. Never trade with living expenses or borrowed money.
This product is digital content (source code). Due to its nature, returns and refunds are not accepted after download. Please review the product details thoroughly before purchasing. However, if there is a clear defect such as file corruption, please contact us within 7 days of purchase.
Payments made in XYM (Symbol) are refunded in XYM for the full amount, and we pay the network fee for the refund transfer — nothing is deducted from your refund. Only plain Transfer transactions can be matched to an order; if a payment cannot be matched, we contact you at the email address on the order.
The copyright of this software belongs to the seller. The purchaser is granted the right to use and modify the software for personal use (including commercial use under a license agreement).