この戦略は,ストコスタスティックオシレーターのクロスオーバー信号を利用し,買い売り操作を誘発する. %K線が%D線上を横切ると,%K値が20以下になると,ロングポジションを開く. %K線が%D線下を横切ると,%K値が80以上になると,ショートポジションを開く.また,戦略セットは,ポジションを管理し,損失の拡大を防ぐために利益とストップ損失距離を取ります.さらに,戦略は,ポジションを閉じるために論理的条件も設定します.ストコスタスティックオシレーターが開示信号の反対のクロスオーバー信号を示したとき,利益を得たりストップ損失価格に達しなかったとしても,対応するロングまたはショートポジションを閉じる.
ストコスタスティック・クロスオーバーに基づく双方向ストップ・ロスト・テイク・プロフィート戦略は,シンプルでわかりやすい定量的な取引戦略である.ストコスタスティック・オシレーターのクロスオーバー信号を通じて買い売り操作を誘発し,リスク管理のために利益/ストップ・ロストとロジカル条件を設定し,ポジションを閉じる.この戦略の利点は,論理が明確で,初心者が学び,使用するのに適していることである.しかし,ストコスタスティック・オシレーターが不安定な市場で多くの偽信号を生む可能性があり,固定ポジション管理方法が異なる市場状況に適応しない可能性もある.戦略のパフォーマンスをさらに向上させるために,他の指標を導入し,ポジション管理を考慮し,パラメータ最適化,フィルタリング条件を追加することができる.一般的に,この戦略は基本的な取引戦略として機能し,実際の定量化と継続的な改善を通じて,良い取引結果を達成することが期待される.
/*backtest start: 2024-02-29 00:00:00 end: 2024-03-07 00:00:00 period: 10m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("How to force strategies fire exit alerts not reversals", initial_capital = 1000, slippage=1, commission_type = strategy.commission.cash_per_contract, commission_value = 0.0001, overlay=true) // disclaimer: this content is purely educational, especially please don't pay attention to backtest results on any timeframe/ticker // Entries logic: based on Stochastic crossover k = ta.sma(ta.stoch(close, high, low, 14), 3) d = ta.sma(k, 3) crossover = ta.crossover(k,d) crossunder = ta.crossunder(k,d) if (crossover and k < 20) strategy.entry("Buy", strategy.long, alert_message="buy") if (crossunder and k > 80) strategy.entry("Sell", strategy.short, alert_message="sell") // StopLoss / TakeProfit exits: SL = input.int(600, title="StopLoss Distance from entry price (in Ticks)") TP = input.int(1200, title="TakeProfit Distance from entry price (in Ticks)") strategy.exit("xl", from_entry="Buy", loss=SL, profit=TP, alert_message="closebuy") strategy.exit("xs", from_entry="Sell", loss=SL, profit=TP, alert_message="closesell") // logical conditions exits: if (crossunder and k <= 80) strategy.close("Buy", alert_message="closebuy") if (crossover and k >= 20) strategy.close("Sell", alert_message="closesell")