このシリーズの前の章を通して,あなたは基本的に様々な種類の視覚化モジュールの使用をマスターしたと思います. 視覚化モジュールを構築するために シンプルで興味深い戦略を使います
戦略の核心は,上り,落下を狙い,BTC_USDTなどのデジタル通貨のスポット市場を選択し,戦略が実行されているときの現在の価格に応じて,価格が一定の割合で上昇した場合,現在の資産 (価格設定通貨) の一定の割合に応じて購入する.同様に,価格が一定の割合で低下した場合,現在の資産 (通貨) の一定の割合のターゲットを販売する.
再利用可能なモジュールも追加します
上図のように:
クラスライブラリ列には,再利用可能なカプセル化されたクラスライブラリがいくつかあり,チェック後に使用できます. デジタル通貨スポット取引ライブラリ (Digital currency spot trading library) は,デジタル通貨スポット市場で使用される取引ライブラリで,オーダーが発注された後に検出し再試すという複雑な論理を内部で処理します (例えば,オーダーを発注した後に取引がない場合の処理方法). 複雑な処理論理を省きます これはとても便利です
戦略のアイデアがとてもシンプルなので 戦略モジュールはあまり大きくありません 2018年10月に バックテストが始まりました 1年もしないうちに 大小のショックやトレンドコートも現れ 戦略を予備的にテストできます バックテストパラメータ:
この戦略のバックテストの結果を見てみましょう.
興味のある人はそれを勉強することができます. 言語の戦略は, ビジュアルモジュール構築の戦略,戦略の概念,様々なインターフェースの使用を学ぶことで,プログラム取引を開始することは非常に便利です. 戦略には他のインターフェースパラメータはありません. 興味のある人はそれを最適化し,拡張することができます.
function main() {
var basePrice = -1
var addRatio = 0.02
while (true) {
var ticker = exchange.GetTicker()
if (basePrice == -1) {
basePrice = ticker.Last
}
if ((ticker.Last - basePrice) > 0 && ((ticker.Last - basePrice) / basePrice > addRatio)) {
var acc = exchange.GetAccount()
var amount = acc.Balance * addRatio / ticker.Last
$.Buy(amount)
basePrice = ticker.Last
}
if ((ticker.Last - basePrice) < 0 && ((basePrice - ticker.Last) / basePrice > addRatio)) {
var acc = exchange.GetAccount()
var amount = acc.Stocks * addRatio
$.Sell(amount)
basePrice = ticker.Last
}
}
}
この戦略の興味深い側面は,口座資産が最初はBTC_USDT取引ペアなどの通貨と貨幣価値に相当するように設定されていることです. BTC価格は現在10000で,口座通貨は5で,USDTは50000で割り当てられています.
戦略は市場情勢や価格上昇と減少に 中立です USDTを少なめ 多額の通貨を配分してみてください 例えば:
バックテストで明らかな変化があります
また,より多くのUSDTと少ない通貨を設定することもできます.
モジュールを作って 独自のプログラム取引のアイデアを 一緒に試しましょう
視覚化戦略の例:
https://www.fmz.com/strategy/121404 https://www.fmz.com/strategy/129895 https://www.fmz.com/strategy/123904 https://www.fmz.com/strategy/122318より多くの戦略については,以下を参照してください.https://www.fmz.com/square
このシリーズの他の記事
退屈なプログラミングは簡単にブロックで完了できます. 試してみるのはとても面白いです!