
双均線突破戦略は,快線EMAと慢線EMAを計算し,買い信号が快線上をゆっくり通り過ぎるときに多めにすると設定し,売り信号が快線下をゆっくり通り過ぎるときに平仓する.この戦略は,MACD指標を補助判断指標として組み合わせている.MACD柱線上0軸を横切るときに買い信号を生成し,均線戦略とマッチし,さらに信号を検証する.また,戦略は,単日上昇が一定比率に達しているかどうかを監視し,単日上昇が一定の値を超えると,買い信号を生成する.
退出メカニズムでは,ストップ・ロースとストップ・ストップを設定する. ストップ・ロースは入場価格の一定比率を下回るリスクを制御するために固定され,ストップ・ストップは入場価格の一定比率上回るため,利益をロックするために固定されます.
全体として,この戦略は複数の指標を組み合わせ,入場・出場のルールは明確で,トレンド追跡を考慮するとともに,ショートライン操作の機会にも注目し,最適化すると,高波動の株式の選択時取引に適用できる.
双均線突破戦略の核心指標は,快線EMAと慢線EMAである.EMAは指数移動平均を代表し,トレンド追跡指標である.快線EMAパラメータは,一般的に短期を設定して,短期のトレンドを捕捉する.慢線EMAパラメータは,一般的に長期のトレンドの方向を判断するために長期を設定する.慢線を急線に突破すると,短期のトレンドが強くなると,多めにすることができる.快線を下に慢線を突破すると,短期のトレンドが弱くなると,平仓するべきである.
この戦略の快線EMA周期は12日,慢線EMA周期は26日をデフォルトとする.このパラメータ群は比较典型であり,マッチングの時間帯も適している.株の日収束価格がEMA計算の価格入力である.
また,戦略はMACDを補助判断指標として導入している.MACD指標の定義は,快線EMA ((デフォルト12日) 減緩線EMA ((デフォルト26日),再はMACDを平滑処理して信号ラインを得ている.MACD上の0軸を貫通すると,短期利潤が長期利潤を上回ることを意味する.これは購入信号である.この信号は均線戦略とマッチし,検証可能な効果を達成し,信号の信頼性を高めることができる.
最後に,株の1日間の上昇が予測の値 (デフォルトは8%) よりも高いかどうかを監視し,この値を超える1日間の上昇も買い信号を生じます.高波動の株の場合,大幅な1日間の放量停止板は市場状況の一般的な特徴であるため,これはショートラインの機会を捕捉する信号でもあります.
退出時に,戦略は,ストップ・ロスの位置とストップ・ストップの位置を設定する. ストップ・ロスは入場価格の一定比率を下に固定され (デフォルトは5%),損失を制御するために; ストップ・ストップは入場価格の一定比率上に固定され (デフォルトは40%),利益をロックするために.
この戦略は,以下の利点があります.
トレンド追跡とショートライン操作を組み合わせて,柔軟性が高い.双均線は,中長期のトレンドを判断するのに適しており,MACD指標と加重突破判断を重ねて,ショートラインの取引機会を兼ねることができる.
買い物信号は比較的に信頼性が高く,判断が容易である。快線EMA上での慢線EMA形成標準の金叉信号は,判断が単純直感である。MACD指標を組み合わせて検証効果を達成し,信号品質を向上させることができる。
ストップ・ストップ・損失の原則を適用し,リスクを制御できます. 預設のストップ・損失は,損失の一部を迅速にカットして,大きな面積の損失を避けることができます. ストップ・ポジションを設定すると,利益の一部をロックすることもできます.
ルールパラメータは調整可能で適応性が高い.快線EMA周期,慢線EMA周期,単日上昇値などのパラメータは自由に設定でき,異なる株式に対して最適化して適応性を高めることができる.
この戦略には以下のリスクがあります.
単一の指標の組み合わせは偽信号を生成する可能性がある.双均線とMACDの両方で,偽信号の発生が起こり,追跡効果が悪い.より多くの異なるタイプの指標をマッチング検証のために導入することを考えることができる.
大規模な止損は考慮されていない.重大ブラック天事件が発生した場合,十分な総止損値が設定されていないことが,莫大な損失を引き起こす可能性がある.これは,人為的介入によるリスク管理を必要とする.
快線EMAと慢線EMAのパラメータ設定が不適切である場合,失敗する可能性があります.パラメータ設定が一致しない場合,偽信号を引き起こす複数の振動が発生する可能性があります.株式特性に合わせてパラメータテストと最適化が必要になります.
買い買いポイントの選択タイミングは正確ではない。戦略は最適な買い買いポイントを選択していない.これは,より複雑な判断ルールや機械学習などの手段を導入して最適化する必要がある。
双均線突破戦略は,以下の次元から最適化できます.
検証指標を増やし,信号品質を改善する.KDJ,BOLLなどの他の指標をテストして,複数の指標の検証システムを構成し,偽信号を減らす.
機械学習モデルの判断を加え,最適な買出地点を見つけることができる.大量の歴史的データを収集し,最適な買出時間を判断するモデルを構築し,タイミングリスクを下げることができる.
EMA周期パラメータを最適化し,異なるパラメータが戦略効果に与える影響をテストする.異なるパラメータを格子で検索して,最適なパラメータの組み合わせを見つけ,戦略の安定性を高める.
自動調整のストップメカニズムを追加する. 市場レジームの設計に従ってストップを動的に追跡できる. 特殊な状況に際してストップの幅を適切に緩め,戦略の勝率を向上させる.
停止を最適化する. 最適な停止比率を研究することができる.例えば,動的停止を設定し,好況が好転する時に適切な停止を追うなどである.
双均線突破戦略は全体的な枠組みが整っており,指標選択とパラメータ設定は合理的である.これは高波動の株式取引に適したトレンド追跡ショートライン戦略である.しかし,戦略には最適化の余地があり,判断指標,機械学習補助,パラメータ最適化などの追加から深化することを推奨し,戦略の効果をさらに向上させることができる.
/*backtest
start: 2022-11-28 00:00:00
end: 2023-12-04 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy("Volatile Stocks", overlay=true)
//Trading Strategy for Highly Volitile Stocks//
// by @ShanghaiCrypto //
////EMA////
fastLength = input(12)
slowLength = input(26)
baseLength = input(100)
price = close
emafast = ema(price, fastLength)
emaslow = ema(price, slowLength)
emabase = ema(price, baseLength)
///MACD////
MACDLength = input(9)
MACDfast = input(12)
MACDslow = input(26)
MACD = ema(close, MACDfast) - ema(close, MACDslow)
aMACD = ema(MACD, MACDLength)
delta = MACD - aMACD
////PUMP////
OneCandleIncrease = input(8, title='Gain %')
pump = OneCandleIncrease/100
////Profit Capture and Stop Loss//////
stop = input(5.0, title='Stop Loss %', type=float)/100
profit = input(40.0, title='Profit %', type=float)/100
stop_level = strategy.position_avg_price * (1 - stop)
take_level = strategy.position_avg_price * (1 + profit)
////Entries/////
if crossover(emafast, emaslow)
strategy.entry("Cross", strategy.long, comment="BUY")
if (crossover(delta, 0))
strategy.entry("MACD", strategy.long, comment="BUY")
if close > (open + open*pump)
strategy.entry("Pump", strategy.long, comment="BUY")
/////Exits/////
strategy.exit("SELL","Cross", stop=stop_level, limit=take_level)
strategy.exit("SELL","MACD", stop=stop_level, limit=take_level)
strategy.exit("SELL","Pump", stop=stop_level, limit=take_level)
////Plots////
plot(emafast, color=green)
plot(emaslow, color=red)
plot(emabase, color=yellow)
plot(take_level, color=blue)
plot(stop_level, color=orange)