この戦略は,取引信号を生成するためにログスケールのIchimokuクラウドを使用する単純な暗号通貨取引戦略です. 種類間のクロス暗号通貨取引のために設計されています.
この戦略は,カスタムログスケールのイチモク指標を主要取引指標として使用する. イチモク指標には通常,変換線,ベースライン,遅れのスパンが含まれます.この戦略では,これらの線は対数値値空間で計算されます.
具体的には,変換線は,ログ低値とログ高値の最近の9期間の平均値である.ベースラインは26期間の平均値である.リードライン1は変換とベースラインの平均値である.リードライン2は52期間のバックバック平均値である.
長信号は,リードライン1がリードライン2を横切ると生成され,短い信号は横切りに生成されます.
この戦略の主な利点は,ログスケールのイチモク指標を使用することで,暗号通貨のトレンド変化をよりよく把握できる. 割合の変化はロガリズム空間でより一貫性があり,より信頼性の高い取引信号をもたらします.
また,暗号通貨のクロスバラエティ取引を容易にするという利点もあります. ログ・イチモクを使用することで,異なる暗号品種の価格変化の比較性が向上します.
主なリスクは,イチモクシグナルが失敗する可能性があります.特に不安定な暗号市場では,イチモクシグナルのパフォーマンスが悪化する可能性があります.
また,対数変換は極端な動き中に失敗する可能性があります.価格が異常なジャンプをするとき対数空間の比較性は減少します.
戦略は以下によって強化される:
イチモク信号を確認するフィルターを追加し,偽信号を減らす
クリプト品種に適した最適パラメータの更新
誤ったブレイクを避けるため,ボリュームなどのプリエントリーフィルターを追加する
リスク管理のために入場規則を最適化し,ストップと利益目標を追加する
この戦略は,暗号通貨とクロスバリエーション取引に合わせた定量戦略を設計するために対数的なイチモク指標を使用する.トレンドを把握するのに有利であるが,リスクもある.パラメータ,フィルター,リスク制御へのさらなる最適化は戦略のパフォーマンスを向上させる.
/*backtest start: 2024-01-22 00:00:00 end: 2024-02-21 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy(title="Log Ichimoku Strategy", shorttitle="Ichi Strategy", overlay=true) drop1st(src) => x = na x := na(src[1]) ? na : src conversionPeriods = input(9, minval=1, title="Conversion Line Periods"), basePeriods = input(26, minval=1, title="Base Line Periods") laggingSpan2Periods = input(52, minval=1, title="Lagging Span 2 Periods"), displacement = input(26, minval=1, title="Displacement") showClouds = input(false, "show clouds") loglows = log(drop1st(low)) loghighs = log(drop1st(high)) donchian(len) => avg(lowest(loglows, len), highest(loghighs, len)) conversionLine = donchian(conversionPeriods) baseLine = donchian(basePeriods) leadLine1 = avg(conversionLine, baseLine) leadLine2 = donchian(laggingSpan2Periods) plot(showClouds ? exp(conversionLine) : na, color=#0496ff, title="Conversion Line") plot(showClouds ? exp(baseLine) : na, color=#991515, title="Base Line") p1 = plot(showClouds ? exp(leadLine1) : na, offset = displacement, color=green, title="Lead 1") p2 = plot(showClouds ? exp(leadLine2) : na, offset = displacement, color=red, title="Lead 2") fill(p1, p2, color = showClouds ? (leadLine1 > leadLine2 ? green : red) : na) if (crossover(leadLine1, leadLine2)) strategy.entry("Ichi-LE", strategy.long, oca_name="Ichi", comment="Ichi") if (crossunder(leadLine1, leadLine2)) strategy.entry("Ichi-SE", strategy.short, oca_name="Ichi", comment="Ichi")