
この策略は,ベース平均線の震動突破策 () と呼ばれる.この策略は,価格の異なる周期の移動平均を計算して,価格が重要な平均線を破るか否かを判断して,長短を短縮する.短周期平均線が長周期平均線を破るときは多頭し,短周期平均線が長周期平均線を下回るときは空頭する.
この策略は主に均等線理論に基づいています. 移動平均は技術分析でよく使用される分析ツールであり,価格データから短期価格変動ののノイズをフィルターし,価格の主なトレンドの方向を反映します. 急速移動平均は価格の短期トレンドを反映し,遅い移動平均は価格の長期トレンドを反映します. 急速移動平均の上または下を通過すると,短期トレンドが長期トレンドと反転することを意味します.
本策は,この原理を利用して,2つの異なるパラメータのEMA平均線を設定し,短周期の”つを快線,長周期の”つを慢線とする.この策では,それぞれ長さ9と26のEMA平均線を変換線と基準線として計算する.短周期のEMAに長周期のEMAを穿うとき,多し,短期価格が長期価格より高いことを示し,多頭シグナルに属す.短周期のEMAの下に長周期のEMAを穿うとき,空し,短期価格が長期価格より低いことを示し,空頭シグナルに属す.
この戦略は,価格の短期的なトレンドの機会を捉えるために,価格の可能な逆転点を,EMAの速やかな突破によって判断します.
停止幅を適当に緩和し,明確な反転信号が確認された後に再入場
パラメータ最適化,均線周期パラメータの調整,最適化されたパラメータrizを使用して取引を行う
他の指標と組み合わせて,明確な信号を決定できます.
他の構成型指標を導入して,重要なポイントで戦略的決定を行う
この戦略は,以下の方向でさらに改善できます.
ポジション管理機構の強化,単位のリスクの軽減
単一損失を効果的に制御するための止損メカニズムを増やす
取引量,取引量指標の組み合わせを導入し,価格の偽突破を避ける
モデル予測の強化,価格の逆転の可能性を予測する機械学習の活用,意思決定の効果の向上
ディープ・ラーニングなどの手法で,プロのトレーダーの意思決定を模倣し,反転の確率の高いポイントで取引シグナルを選択します.
この戦略は,均線指標判断に基づく短期逆転戦略の1つである。カスタマイズ可能なパラメータの設定は,そのための良好な柔軟性を提供します。単純な指標のみを使用するものの,パラメータを調整することで,市場環境にうまく適応できます。この戦略は,短期価格逆転が提供するスレートチャンスを掴むことを目的としています。さらにポジション管理,損失防止機構などの手段を導入することにより,リスクを効果的に制御し,戦略の安定性を向上させることができます。同時に,より多くの先進技術指標と機械学習方法を導入し,戦略の効果を向上させ,戦略の効果を向上させる余地を探索することができます。
/*backtest
start: 2023-01-16 00:00:00
end: 2024-01-22 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy("Juiced Ichimoku Strat", overlay=true)
USE_TRADESESSION = input(title='Use Trading Session?', type=bool, defval=true)
trade_session = input(title='Trade Session:', defval='0800-1600', confirm=false)
istradingsession = not USE_TRADESESSION ? false : not na(time('1', trade_session))
bgcolor(istradingsession?gray:na)
varLo = input(title="Fast (Conversion) Line", defval=9, minval=1, maxval=99999)
varHi = input(title="Slow (Base) Line", defval=26, minval=1, maxval=99999)
emafreq = input(title="Ema on price frequency", defval=2, minval=1, maxval=99999)
a = lowest(varLo)
b = highest(varLo)
c = (a + b ) / 2
d = lowest(varHi)
e = highest(varHi)
f = (d + e) / 2
//g = ((c + f) / 2)[varHi]
//h = ((highest(varHi * 2) + lowest(varHi * 2)) / 2)[varHi]
z = ema(close, emafreq)
bgcolor(z > c and z > f ? green : z < c and z < f ? red : yellow, transp=70)
plot(z, title="ema on Price", color=black)
plot(c, title="Fast (Conversion) Line", color=green)
plot(f, title="Slow (Base) Line", color=red)
long = z > c and z > f and (USE_TRADESESSION ? istradingsession : true)
short = z < c and z < f and (USE_TRADESESSION ? istradingsession : true)
//exit = z < c and z > f or z > c and z < f
closelong = z < c and z > f or z > c and z < f and (USE_TRADESESSION ? istradingsession : true)
if (closelong)
strategy.close("Long")
closeshort = z < c and z > f or z > c and z < f and (USE_TRADESESSION ? istradingsession : true)
if (closeshort)
strategy.close("Short")
strategy.entry("long", strategy.long, when=long)
strategy.entry("short", strategy.short, when=short)