この戦略は,イチモク・キンコ・ヒョー指標,日々のブレイクアウト,ガウシアス平滑移動平均値,MACD,その他の技術指標を統合し,トレンド方向を決定し,信頼できるエントリーポイントを見つけます.
イチモク・キンコ・ヒョウ判定: ベースラインの上の変換線横断は上昇信号です.
日々のブレイク判断: 今日の閉店は昨日のより高い 閉店は一定
ガウシアン・スムーズ・MA判断: 価格・クロスオーバーは上昇傾向にある.
MACDの判断: DIFFがDEAを上回るのは上昇傾向です
上記の要素を組み合わせて 傾向の変化と入口点を決定する
複数の指標が精度を向上させる
日中の確認と 多時間枠の確認は 偽の突破を避ける
イチモク・キンコ・ヒョウは,信頼性のあるトレンドを決定します.
ガウスの平滑MAは遅延が小さい.
MACDは動力変化を判断します.
複数の同時状態が 侵入の可能性を減らす
間違った指標パラメータが間違った信号を生成する可能性があります.
日中信号と多時間枠信号が衝突する可能性があります.
偽の脱出が起きています 損失を伴う
可能な解決策:
パラメータを調整してエントリを増やします.
異なる製品と時間枠のためのパラメータを最適化します.
異なるタイムフレームからの信号を調整する
損失を制限するためにストップロスを使用します.
異なる指標の組み合わせをテストして より良い信号を得ます
機械学習を追加して より多くのデータから判断を改善します
逆トレンドの取引を避けるためにトレンド検出を追加します.
資金管理を最適化して 安定性を確保する
ストップ・ロスを最適化し 利益を得て 収益性を上げます
この戦略は,トレンド指向を決定するために複数の指標を統合し,タイムフレームやインジケーターにわたって検証された高確率の上昇シグナルを入力します.パラメータを調整し,インジケーターの組み合わせを最適化し,より多くのシグナルを統合するためにより多くのデータを組み込むことで改善できます.
/*backtest start: 2022-09-17 00:00:00 end: 2023-09-23 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 // Any timeFrame ok but good on 15 minute & 60 minute , Ichimoku + Daily-Candle_cross(DT) + HULL-MA_cross + MacD combination 420 special blend strategy("Ichimoku + Daily-Candle_X + HULL-MA_X + MacD", shorttitle="٩(̾●̮̮̃̾•̃̾)۶", overlay=true, default_qty_type=strategy.percent_of_equity, max_bars_back=26, default_qty_value=100, calc_on_order_fills= true, calc_on_every_tick=true, pyramiding=0,precision=6) keh=input(title="Double HullMA",defval=14, minval=1) dt = input(defval=0.0010, title="Decision Threshold (0.001)", type=float, step=0.0001) SL = input(defval=-500.00, title="Stop Loss in $", type=float, step=1) TP = input(defval=25000.00, title="Target Point in $", type=float, step=1) ot=1 p = input(7, minval=1, title="Length") pi=3.1415926535 w=2*pi/p beta = (1 - cos(w))/(pow(1.414,2.0/3) - 1) alfa = -beta + sqrt(beta*beta + 2*beta) ret1= pow(alfa,4)*close+4*(1-alfa)*nz(ret1[1])-6*pow(1-alfa,2)*nz(ret1[2])+4*pow(1-alfa,3)*nz(ret1[3])-pow(1-alfa,4)*nz(ret1[4]) ret2= pow(alfa,4)*close[1]+4*(1-alfa)*nz(ret1[1])-6*pow(1-alfa,2)*nz(ret1[2])+4*pow(1-alfa,3)*nz(ret1[3])-pow(1-alfa,4)*nz(ret1[4]) confidence=(security(syminfo.tickerid, 'D', close)-security(syminfo.tickerid, 'D', close[1]))/security(syminfo.tickerid, 'D', close[1]) conversionPeriods = input(9, minval=1, title="Conversion Line Periods") basePeriods = input(26, minval=1, title="Base Line Periods") laggingSpan2Periods = input(52, minval=1, title="Lagging Span 2 Periods") displacement = input(26, minval=1, title="Displacement") donchian(len) => avg(lowest(len), highest(len)) conversionLine = donchian(conversionPeriods) baseLine = donchian(basePeriods) leadLine1 = avg(conversionLine, baseLine) leadLine2 = donchian(laggingSpan2Periods) LS=close, offset = -displacement MACD_Length = input(9) MACD_fastLength = input(12) MACD_slowLength = input(26) MACD = ema(close, MACD_fastLength) - ema(close, MACD_slowLength) aMACD = ema(MACD, MACD_Length) closelong = ret1<ret2 and close<ret2 and confidence<dt or strategy.openprofit<SL or strategy.openprofit>TP if (closelong) strategy.close("Long") longCondition = ret1>ret2 and strategy.opentrades<ot and confidence>dt and close>ret2 and leadLine1>leadLine2 and open<LS and MACD>aMACD if (longCondition) strategy.entry("Long",strategy.long) // /L'-, // ,'-. /MM . . / L '-, // . _,--dMMMM\ /MMM `.. / '-, // : _,--, )MMMMMMMMM),. `QMM ,<> /_ '-,' // ; ___,--. \MM( `-' )M//MM\ ` ,',.; .-'* ; .' // | \MMMMMM) \MM\ ,dM//MMM/ ___ < ,; `. )`--' / // | \MM()M MMM)__ /MM(/MP' ___, \ \ ` `. `. /__, ,' // | MMMM/ MMMMMM( /MMMMP'__, \ | / `. `-,_\ / // | MM /MMM---' `--'_ \ |-' |/ `./ .\----.___ // | /MM' `--' __,- \"" |-' |_, `.__) . .F. )-. // | `--' \ \ |-' |_, _,-/ J . . . J-'-. `-., // | __ \`. | | | \ / _ |. . . . \ `-. F // | ___ / \ | `| ' __ \ | /-' F . . . . \ '` // | \ \ \ / | __ / \ | |,-' __,- J . . . . . \ // | | / |/ __,- \ ) \ / |_,- __,--' |. .__.----,' // | |/ ___ \ |'. |/ __,--' `.-;;;;;;;;;\ // | ___ \ \ | | ` __,--' /;;;;;;;;;;;;. // | \ \ |-'\ ' __,--' /;;;;;;;;;;;;;;\ // \ | | / | __,--' `--;;/ \;-'\ // \ | |/ __,--' / / \ \ // \ | __,--' / / \ \ // \|__,--' _,-;M-K, ,;-;\ // <;;;;;;;; '-;;;; //a1=plot(n1,color=c) //a2=plot(n2,color=c) //plot(cross(n1, n2) ? n1 : na, style = circles, color=b, linewidth = 4) //plot(cross(n1, n2) ? n1 : na, style = line, color=d, linewidth = 4) //plot(conversionLine, color=#0496ff, title="Conversion Line") //plot(baseLine, color=#991515, title="Base Line") //plot(close, offset = -displacement, color=#459915, title="Lagging Span") //p1=plot (leadLine1, offset = displacement, color=green, title="Lead 1") //p2=plot (leadLine2, offset = displacement, color=red, title="Lead 2") //fill(p1, p2, color = leadLine1 > leadLine2 ? green : red) // remove the "//" from before the plot script if want to see the indicators on chart