
この戦略は,移動平均散乱指標 ((MACD) とランダムな相対的に強い指標 ((Stoch RSI) の2つの要因を組み合わせて,市場トレンドの方向を判断し,トレンドが向上するときに多行し,トレンドが低下するときに空行し,トレンド追跡型の戦略に属します.
この戦略は,MACDとStoch RSIの2つの指標を使用して,市場の傾向の方向を判断します.
MACD指数は,速線 (エマ速線) と慢線 (エマ慢線) とその差値で構成され,短期と長期の平均の集積と分離状態を反映している. 速線が慢線を横切るときは買信,速線が慢線を横切るときは売信である.
ストックRSIは,RSIとストック指数の優位性を組み合わせて,市場の超買い超売り現象を示すことができます.ストックRSIは,ストックRSI信号線より大きい場合は買入信号,信号線より小さい場合は売り信号になります.
この戦略は,日線と4時間線でMACDとStoch RSIを使用して市場のトレンド方向を判断します.当日の日線と4時間線の2つの指標が同時に買入シグナルを発信する場合は,多めにします.そして,2つの指標が同時に売出シグナルを発信する場合は,空いてください.これは,偽の信号を効果的にフィルターして,信号の信頼性を向上させます.
市場動向を判断する2つの要因を組み合わせて,偽信号を効率的にフィルターし,信号の正確性を向上させる
日線と4時間線) で信号を検証し,競売を避ける
トレンドを追跡し,波動を回避する
戦略は明確でシンプルで,実行は簡単です.
MACDとStoch RSIのパラメータを調整し,買出点を最適化する
移動式止損策を導入し,収益を固定する
資金管理モジュールを追加し,単一ポジションを制御する
信号の精度が向上する
機械学習による動的最適化パラメータ
この戦略は,高低時間軸の検証信号と組み合わせた2つの要因モデルを使用して,トレンドの方向を判断し,より安定した信頼性の高いトレンド追跡戦略である.一定のリスク予防能力と容認の余地がある.後の段階では,パラメータ最適化,ストップダスト戦略,資金管理などのモジュールを追加することにより,より良い戦略パフォーマンスを得ることが期待される.
/*backtest
start: 2024-01-09 00:00:00
end: 2024-01-16 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy(title='[RS]Khizon (UGAZ) Strategy V0', shorttitle='K', overlay=false, pyramiding=0, initial_capital=100000, currency=currency.USD)
// || Inputs:
macd_src = input(title='MACD Source:', defval=close)
macd_fast = input(title='MACD Fast Length:', defval=12)
macd_slow = input(title='MACD Slow Length:', defval=26)
macd_signal_smooth = input(title='MACD Signal Smoothing:', defval=9)
srsi_src = input(title='SRSI Source:', defval=close)
srsi_rsi_length = input(title='SRSI RSI Length:', defval=14)
srsi_stoch_length = input(title='SRSI Stoch Length:', defval=14)
srsi_smooth = input(title='SRSI Smoothing:', defval=3)
srsi_signal_smooth = input(title='SRSI Signal Smoothing:', defval=3)
// || Strategy Inputs:
trade_size = input(title='Trade Size in USD:', type=float, defval=1)
buy_trade = input(title='Perform buy trading?', type=bool, defval=true)
sel_trade = input(title='Perform sell trading?', type=bool, defval=true)
// || MACD(close, 12, 26, 9): ||---------------------------------------------||
f_macd_trigger(_src, _fast, _slow, _signal_smooth)=>
_macd = ema(_src, _fast) - ema(_src, _slow)
_signal = sma(_macd, _signal_smooth)
_return_trigger = _macd >= _signal ? true : false
// || Stoch RSI(close, 14, 14, 3, 3) ||-----------------------------------------||
f_srsi_trigger(_src, _rsi_length, _stoch_length, _smooth, _signal_smooth)=>
_rsi = rsi(_src, _rsi_length)
_stoch = sma(stoch(_rsi, _rsi, _rsi, _stoch_length), _smooth)
_signal = sma(_stoch, _signal_smooth)
_return_trigger = _stoch >= _signal ? true : false
// ||-----------------------------------------------------------------------------||
// ||-----------------------------------------------------------------------------||
// || Check Directional Bias from daily timeframe:
daily_trigger = security('NGAS', 'D', f_macd_trigger(macd_src, macd_fast, macd_slow, macd_signal_smooth) and f_srsi_trigger(srsi_src, srsi_rsi_length, srsi_stoch_length, srsi_smooth, srsi_signal_smooth))
h4_trigger = security('NGAS', '240', f_macd_trigger(macd_src, macd_fast, macd_slow, macd_signal_smooth) and f_srsi_trigger(srsi_src, srsi_rsi_length, srsi_stoch_length, srsi_smooth, srsi_signal_smooth))
plot(title='D1T', series=daily_trigger?0:na, style=circles, color=blue, linewidth=4, transp=65)
plot(title='H4T', series=h4_trigger?0:na, style=circles, color=navy, linewidth=2, transp=0)
sel_open = sel_trade and not daily_trigger and not h4_trigger
buy_open = buy_trade and daily_trigger and h4_trigger
sel_close = not buy_trade and daily_trigger and h4_trigger
buy_close = not sel_trade and not daily_trigger and not h4_trigger
strategy.entry('sel', long=false, qty=trade_size, comment='sel', when=sel_open)
strategy.close('sel', when=sel_close)
strategy.entry('buy', long=true, qty=trade_size, comment='buy', when=buy_open)
strategy.close('buy', when=buy_close)