この戦略は,急速移動平均 (Fast MA) と遅い移動平均 (Slow MA) を計算し,トレンドに沿ったロングまたはショートポジションを実行するために比較を行い,市場のトレンド方向を判断する.急速なMAが遅いMAを横切ると,ロングに行く.急速なMAが遅いMAを下回ると,ショートに行く.一方,ストップ損失と利益はリスクを制御するために設定されています.
この戦略のコア論理は,移動平均の黄金十字と死十字に基づいています.移動平均は平均市場価格の変化を非常によく反映することができます. 急速な平均は短い期間を持ち,価格変化に迅速に対応することができます. 遅い平均は長い期間を持ち,より広範な市場トレンド方向を表しています. 速いMAが遅いMAを横切ると,市場は上昇傾向を開始していることを示します. 速いMAが遅いMAを下回ると,市場は下落傾向を開始していることを示します.
具体的には,この戦略は,それぞれ50期間の高速MAと200期間の遅いMAを計算する.各キャンドルストークの閉じる時に,高速MAがスローMAを超えたか下回ったかを判断する.クロスオーバー (黄色い線が赤線を越える) があれば,次のキャンドルストークのオープン時にロングポジションに入ります.クロスダウン (黄色い線が赤線を下回る) があれば,次のキャンドルストークのオープン時にショートポジションに入ります.
トレイルストップは,ポジションを入力した後,ストップ・ロスを追跡し,利益をロックするために使用されます. さらに,ストップ・ロストとテイク・プロフィートは,ATR値に基づいて設定されます.
これは典型的なトレンドフォロー戦略であり,以下の利点があります.
この戦略にはいくつかのリスクもあります:
解決策:
この戦略をさらに最適化できる余地があります.
概要すると,この戦略は,単純な移動平均金十字とデッドクロスを用いて市場動向を判断し,追跡し,合理的なストップ損失と利益を得ることでリスクを制御する.これは初心者のための簡単なトレンドフォロー戦略です.パラメータ,ストップ損失メカニズム,戦略パフォーマンスの向上のための最適化方法などの側面についてさらなる研究と最適化が必要です.
/*backtest start: 2024-01-24 00:00:00 end: 2024-01-31 00:00:00 period: 10m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © KasperKvist //@version=4 strategy("EURCHF Smart Money Strategy", overlay=true) // Input Parameters fastLength = input(50, title="Fast MA Length") slowLength = input(200, title="Slow MA Length") riskRewardRatio = input(2, title="Risk-Reward Ratio") // Calculate Moving Averages fastMA = sma(close, fastLength) slowMA = sma(close, slowLength) // Strategy Conditions longCondition = crossover(fastMA, slowMA) shortCondition = crossunder(fastMA, slowMA) // Execute Strategy strategy.entry("Long", strategy.long, when = longCondition) strategy.entry("Short", strategy.short, when = shortCondition) // Set Stop Loss and Take Profit atrValue = atr(14) stopLoss = atrValue * 1 takeProfit = atrValue * riskRewardRatio strategy.exit("ExitLong", from_entry="Long", loss=stopLoss, profit=takeProfit) strategy.exit("ExitShort", from_entry="Short", loss=stopLoss, profit=takeProfit) // Plot Moving Averages plot(fastMA, color=color.green, title="Fast MA") plot(slowMA, color=color.red, title="Slow MA")