
この戦略は,複数の異なる時間周期の移動平均を計算することによって,複数の時間フレームのトレンド判断を実現する.価格が異なる周期の移動平均を突破すると,それに対応する多空操作を行う.同時に,止損と停止方法を組み合わせて,リスクと利益のバランスを実現する.
この戦略は以下のポイントに 基づいています:
21日線,50,100日線,200日線4つの異なる時間周期の単純移動平均を計算する.
価格が上から任意の平均線を突破すると,多めに;価格が下から任意の平均線を突破すると,空いてください.
複数の状況に入ると,止損点は前K線の最低価格の近くに設定されます.空白状況に入ると,止損点は前K線の最高価格の近くに設定されます.
多数ストップポイントを最低価格の下の一定の範囲に設定し,空白ストップポイントを最高価格上の一定の範囲に設定する.
価格がストップ・ロースまたはストップ・ブーストに達すると,平仓を退場する.
この多時間枠判断によって,トレードシグナルの信頼性が向上し,トレンドがより明確であるときに追跡することができます.同時に,ストップ・ロズとストップ・ストップの設定は,リスクを制御し,損失が拡大した後に市場から退出することができます.
この戦略の利点は以下の通りです.
多時間枠判断,信号信頼性の向上.異なる周期均線の交叉組み合わせは,部分的な偽信号をフィルタリングして,傾向がより明確なタイミングで取引を選択することができる.
動的ストップ・ストップ方式はリスク管理に便利である.K線データと組み合わせたストップ・ストップの計算により,市場の実際の波動幅に応じて合理的な範囲を設定し,単一の損失の最大値を効果的に制御することができる.
コード構造は清晰で簡潔である.Pineエディタによる策略文法に基づいて,コード構造は明快で読みやすいで,パラメータ調整と最適化が容易である.
リアルタイムで適用しやすい.移動平均クロスとは,パラメータを調整した後にリアルタイムで適用しやすく,効果が安定する,より古典的な取引戦略である.
この戦略にはいくつかのリスクがあります.
トレンド判断誤差のリスク.移動平均はトレンド判断指標として,誤差や遅れの発生が起こり,取引信号が偏りやすい可能性があります.
大幅な波動の市場での損失のリスク.市場が大幅な空飛躍や巨額の反転を起こすと,止損ポイントは容易に誘発され,大きな損失をもたらす可能性があります.
パラメータを正しく設定しない場合,損失が拡大する.停止ポイントを幅広く設定したり,停止ポイントを狭く設定したりすると,単一の損失の大きさが拡大する.
長期にわたって持てるリスク.この戦略はトレンドを追跡することに重点を置くが,長期にわたって全ポジションを保有することは,大量に資金を消費する可能性があるという長期にわたる利回り引き戻し比率の問題を考慮していない.
プラットフォームの差異は,実盤リスクをもたらす.完全な機能を持つ取引プラットフォームでは,取引コスト,滑り点などの問題により,収益率に影響を与える可能性があります.
対策として
他の指標の検証信号と組み合わせる.例えばKDJ,MACDなどの指標の補助判断.
市場状況に応じてストップの幅を調整する.十分なスペースは,ストップが容易に誘発されるのを防ぐ.
パラメータを最適化し,長期の利回り撤回を評価する. 繰り返しテストすることで最適なパラメータの組み合わせを得る.
シミュレーションで戦略を十分にテストし,手動のストップ・ロスを補完する.
この戦略は,さらに改善する余地があり,主要方向は以下の通りです.
定量的な入場・出場条件を増加させる.例えば,価格の革新的高と革新的低のフィルタリングを設定することができ,トレンドが明確なタイミングの取引を選択することを保証する.
資金管理とポジションコントロールの組み合わせ.口座と市場の状況に応じて,それぞれの取引のポジション比率を動的に調整する.
トレンド指標の判断論理を追加する.PRZ,ATR,DMIなどの指標を組み合わせてトレンド取引の選択とフィルタリングルールを設定する.
長短交替の出場メカニズムを設定する.利潤の後に価格の引き戻し幅の移動ストップを設定し,利潤の保護を実現する.
智能選股基準に合致する基準の池の構築.様々な指標のスコアを評価する株式池の構築と調整.
機械学習の風制御手段を増やす.LSTM,RNNなどの深度学習モデルを使用し,人工ミス操作のリスクを減らす.
この戦略は,シンプルな移動平均の複数の時間枠の交差によってトレンド判断を行い,操作性が強くなっています.同時に,動的ストップとストップの設定で,リスクを効果的に制御できます.しかし,特定の信号誤判リスクと震動状況下での資金損失の問題もあります.パラメータをさらに最適化し,補助技術指標,リスク管理手段などを追加することで,より優れた安定した取引パフォーマンスを得ることができます.
/*backtest
start: 2024-01-04 00:00:00
end: 2024-02-03 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("DolarBasar by AlperDursun", shorttitle="DOLARBASAR", overlay=true)
// Input for Moving Averages
ma21 = ta.sma(close, 21)
ma50 = ta.sma(close, 50)
ma100 = ta.sma(close, 100)
ma200 = ta.sma(close, 200)
// Calculate the lowest point of the previous candle for stop loss
lowestLow = ta.lowest(low, 2)
// Calculate the highest point of the previous candle for stop loss
highestHigh = ta.highest(high, 2)
// Calculate take profit levels
takeProfitLong = lowestLow - 3 * (lowestLow - highestHigh)
takeProfitShort = highestHigh + 3 * (lowestLow - highestHigh)
// Entry Conditions
longCondition = ta.crossover(close, ma21) or ta.crossover(close, ma50) or ta.crossover(close, ma100) or ta.crossover(close, ma200)
shortCondition = ta.crossunder(close, ma21) or ta.crossunder(close, ma50) or ta.crossunder(close, ma100) or ta.crossunder(close, ma200)
// Stop Loss Levels
stopLossLong = lowestLow * 0.995
stopLossShort = highestHigh * 1.005
// Exit Conditions
longExitCondition = low < stopLossLong or high > takeProfitLong
shortExitCondition = high > stopLossShort or low < takeProfitShort
if (longCondition)
strategy.entry("Long", strategy.long)
if (shortCondition)
strategy.entry("Short", strategy.short)
if (longExitCondition)
strategy.exit("Long Exit", from_entry="Long", stop=stopLossLong, limit=takeProfitLong)
if (shortExitCondition)
strategy.exit("Short Exit", from_entry="Short", stop=stopLossShort, limit=takeProfitShort)