この戦略は"SMAクロスオーバーイチモク市場深度量ベースの定量取引戦略"と呼ばれる.主にSMAラインの黄金十字と死十字信号を使用し,イチモク市場深度クラウドチャート指標と取引量指標と組み合わせ,両方向のビットコインの自動取引を実装する.
この戦略は主に以下の原則に基づいています.
異なるパラメータを持つSMAラインを使用して,ゴールデンクロスとデッドクロス取引信号を構築します.短期SMAが長期SMAを横切ると購入信号が生成され,短期SMAが長期SMAを下回ると販売信号が生成されます.
イチモク・クラウド・チャート指標を使用して,市場の深さとトレンドを決定します. 閉じる価格がクラウド・チャートのリード・スパンAとリード・スパンBよりも高くなったときにのみ購入信号が生成され,閉じる価格がスペンAとスペンBよりも低くなったときにのみ販売信号が生成されます.これはほとんどの偽信号をフィルタリングします.
取引量の指標を使用して,低取引量の偽信号をフィルタリングします. 取引量が特定の期間中の平均量よりも大きい場合にのみ購入・販売信号が生成されます.
グラフ上の買いと売るシグナルの位置をマークするためにプロットシェープ関数を使用します.
戦略は,短期的および長期的動向,市場深度指標,取引量指標を考慮し,取引決定を最適化します.
この戦略の利点は以下の通りです.
この戦略のリスクには以下も含まれる.
これらのリスクは SMA,イチモク,ボリュームなどのパラメータを最適化し,適切な取引製品を選択することで軽減できます
戦略はいくつかの方法で最適化できます.
この戦略は,SMAクロスオーバー,市場深度指標およびボリューム指標を統合して,比較的安定かつ信頼性の高い定量的な取引戦略を形成する.パラメータ調整,新しい技術指標を追加などによりさらに最適化することができる.バックテストおよびライブ結果は有望である.要約すると,この戦略は初心者にとって良い学習ケースを提供します.
/*backtest start: 2024-01-16 00:00:00 end: 2024-01-23 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("SMA Crossover with Ichimoku & Volume", shorttitle="SCIV", overlay=true) // Define the length of SMA shortSmaLength = input(14, title="Short SMA Length") longSmaLength = input(21, title="Long SMA Length") volumeLength = input(20, title="Volume Moving Average Length") // Calculate the SMA and Volume MA shortSma = sma(close, shortSmaLength) longSma = sma(close, longSmaLength) volumeMa = sma(volume, volumeLength) // Define the lengths of the Ichimoku Cloud components tenkanLength = input(9, title="Tenkan Length") kijunLength = input(26, title="Kijun Length") senkouBLength = input(52, title="Senkou B Length") displacement = input(26, title="Displacement") // Calculate the Ichimoku Cloud components tenkan = (highest(high, tenkanLength) + lowest(low, tenkanLength)) / 2 kijun = (highest(high, kijunLength) + lowest(low, kijunLength)) / 2 senkouA = (tenkan + kijun) / 2 senkouB = (highest(high, senkouBLength) + lowest(low, senkouBLength)) / 2 // Define the conditions for entry and exit with Ichimoku filter and Volume filter buyEntry = crossover(shortSma, longSma) and close > senkouA[displacement] and close > senkouB[displacement] and volume > volumeMa sellEntry = crossunder(shortSma, longSma) and close < senkouA[displacement] and close < senkouB[displacement] and volume > volumeMa // Plot buy/sell conditions on the chart for visual inspection plotshape(buyEntry, style=shape.labelup, location=location.belowbar, color=color.green, text="Buy", size=size.small) plotshape(sellEntry, style=shape.labeldown, location=location.abovebar, color=color.red, text="Sell", size=size.small) // Execute the strategy if (buyEntry) strategy.entry("Buy", strategy.long) if (sellEntry) strategy.entry("Sell", strategy.short)