征服計画

仮想通貨戦記

zenbotを試してみる。 (1)

はじめに

たぶん日本語の情報がないので、zenbotを試してみましょう。

zenbotはこちら。

github.com

Zenbot is a command-line cryptocurrency trading bot using Node.js and MongoDB. It features:

Fully-automated technical-analysis-based trading approach Full support for GDAX, Poloniex, Kraken, Bittrex, Quadriga, Gemini, Bitfinex, CEX.IO and Bitstamp, work on further exchange support is ongoing. Plugin architecture for implementing exchange support, or writing new strategies Simulator for Backtesting strategies against historical data "Paper" trading mode, operates on a simulated balance while watching the live market Configurable sell stops, buy stops, and (trailing) profit stops Flexible sampling period and trade frequency - averages 1-2 trades/day with 1h period, 15-50/day with 5m period

なにやらアメリカ語でいろいろ書いてありますが、いろんな仮想通貨取引所に対応している仮想通貨用のトレーディングボットであり、バックテストに対応しており、拡張もしやすいよ、ということですね。

Current Status

Zenbot 4 is functional, but is having trouble reliably making profit. At this point, I would recommend against trading with large amounts until some of these issues can be worked out:

Many people are reporting losses in live trading even if the simulation results and/or paper trading is positive. This is my highest priority right now, since an unprofitable bot is not worth much, but please understand that reliably making profit is hard, and so is making a realistic simulator. The losses may be due to the default strategy not working well in sideways (non-trending) market conditions, slippage during limit order execution, or both. Currently I would recommend against using Zenbot on a market that is non-trending or trending generally downwards. The limit-order strategy that Zenbot uses to avoid taker fees, is prone to race conditions and delays. A mode for using market-type orders will probably need to be made, which may make frequent-trade strategies less viable due to fees, but more reliable execution overall. An upcoming feature will allow Zenbot to use a limited amount of your balance, which will help with experimenting with live trading, but mitigating the possible losses from the issues above.

この辺はてきとうに訳しておきましょうか。

現在の状況:

zenbotはまあ動くけど、確実に利益を出すには問題がある。大きな資金でトレードするなら、以下の問題が解決してからのほうがいい。

  • 多くの人々が、シミュレーションやペーパートレードで利益がでていても、リアルトレードでは損失がでると報告している。

  • 利益のでないbotなんで役立たずだから、これは最優先課題だ。ただし、アルなシミュレータを作るのも確実に利益を出すのもとてもむずかしいのをわかってほしい。

  • 損失の原因は、デフォルトの戦略がトレンドがないマーケットで通用しないことだったり、リミットオーダのスリッページによるものだったりする。今はトレンドのないマーケットや下方向のマーケットで使うことをおすすめしない。

  • Zenbotが受取手数料を避けるために使用するリミットオーダ戦略は、競争条件や遅延が発生しやすい。マーケットタイプの注文を使用するためのモードが必要になる。これにより、頻繁な取引戦略は手数料のために実行可能にならない可能性があるが、全体としてより信頼性の高い実行が可能になる。

  • 今後の機能により、Zenbotは残高の限られた金額を使用することができ、ライブ取引の実験に役立ちつつも、上記の問題による損失の可能性を軽減する。

ウーム。要は、at your own riskってことでしょうか。まあ少し、実験ならできるでしょうか

とりあえずシミュレーションしてみよう。

仮想通貨であれ株であれFXであれ、システムトレードの前には検証が必要です。検証のないシステムトレードはカンでやっているのとかわらないです。どっかの本で見ました。

シミュレーションのためのデータ取得。

./zenbot.sh backfill bitfinex.BTC-USD --days 30

bitfinex.BTC-USD のところは、

./zenbot.sh list-selectors

するとリストが出てきます。

bitfinex.BTC-USD saved 1000 trades 30 days left
............................................................

結構 ちょっと時間かかりますね。今日は寝よう。zzz...