この戦略は,SMA指標に基づく単純なダブルスルーストレーテージを構築する.価格は20期間の最高SMAを超えるとロングになり,価格は20期間の最低SMAを下回るとショートになる.ストップ損失出口も設定される.
この戦略は,取引の方向性を決定するために,最高高価格と最低低価格の20期SMAを使用します.価格が最高SMAを上回ると,上向きトレンドとみなされ,ロングになります.価格が最低SMAを下回ると,下向きトレンドとみなされ,ショートになります.
具体的には,この戦略はまず,最高高値と最低低値の20期SMAを計算し,インディケーターラインをプロットします.次に以下の取引論理を設定します:
ロングエントリー: 閉じる価格が最高SMAを上回る
ロング エクシート: 閉じる価格が0.99*最高SMAを下回る
短入口: 閉じる価格が最低SMAを下回る
ショートアウト: 閉じる価格が1.01 * 最低のSMAを上回る
双方向推力戦略が形成されるのです
この戦略には以下の利点があります.
この戦略にはいくつかのリスクもあります:
これらのリスクは,他の指標を組み合わせたり,ストップ損失を設定したり,パラメータを調整したりなどで制御され,軽減することができます.
この戦略は,次の側面でも改善できます.
この戦略の全体的な論理は明確で,実行が容易である.SMAを使用してトレンド方向を決定し,合理的なエントリー/エグジットルールを設定することで,良い結果が得られる.さらなる最適化のための余地があり,他の技術と組み合わせることで,長期的に追跡する価値のある有望な戦略になり得る.
/*backtest start: 2023-11-14 00:00:00 end: 2023-11-21 00:00:00 period: 10m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © AlanAntony //@version=4 strategy("ma 20 high-low",overlay=true) //compute the indicators smaH = sma(high, 20) smaL = sma(low, 20) //plot the indicators plot(smaH,title="smaHigh", color=color.green, linewidth=2) plot(smaL,title="smaLow", color=color.red, linewidth=2) //trading logic enterlong = crossover(close,smaH) //positive ema crossover exitlong = crossunder(close,0.99*smaH) //exiting long entershort = crossunder(close,smaL) //negative EMA Crossover exitshort = crossover(close,1.01*smaH) //exiting shorts notintrade = strategy.position_size<=0 bgcolor(notintrade ? color.red:color.green) //execution logic start = timestamp(2015,6,1,0,0) //end = timestamp(2022,6,1,0,0) if time >= start strategy.entry( "long", strategy.long,1, when = enterlong) strategy.entry( "short", strategy.short,1, when = entershort) strategy.close("long", when = exitlong) strategy.close("short", when = exitshort) //if time >= end // strategy.close_all()