دولار أمريكي / ين ياباني
تعليم
تم تحديثه

Pine講座58 バックテストにトレンドフィルターを追加する

1360
トレンドフィルターといっても、
エントリーの条件を増やすだけです。

今回は、タートルズのトレンドフィルターを参考に
エントリーの条件を追加してみました。

メインのロジックとの相性もありますが、
成績が大幅に向上することもあります。

・余分なトレードが減って損失が減る
・エッジの強化

上記のいずれかを満たすと
成績の向上につながると思います。

※ 解説はコードの中で

※ コピペする場合は以下の変更を行ってください
[](全角の角括弧)→(半角の角括弧)
(全角スペース)→(半角スペース)

=====
//version=2
strategy("HullMA Strategy の解説", overlay=true)

n=input(title="period",type=integer,defval=20)

// トレンドフィルターの計算値
_n=input(title="period",type=integer,defval=50)
__n=input(title="period",type=integer,defval=350)

n2ma=2*wma(close,round(n/2))
nma=wma(close,n)
diff=n2ma-nma
sqn=round(sqrt(n))
n2ma1=2*wma(close[1],round(n/2))
nma1=wma(close[1],n)
diff1=n2ma1-nma1
n1=wma(diff,sqn)
n2=wma(diff1,sqn)
c=n1>n2?green:red

// トレンドフィルター用のHullMA①
_n2ma=2*wma(close,round(_n/2))
_nma=wma(close,_n)
_diff=_n2ma-_nma
_sqn=round(sqrt(_n))
_n2ma1=2*wma(close[1],round(_n/2))
_nma1=wma(close[1],_n)
_diff1=_n2ma1-_nma1
_n1=wma(_diff,_sqn)
_n2=wma(_diff1,_sqn)
_c=_n1>_n2?green:red

// トレンドフィルター用のHullMA②
__n2ma=2*wma(close,round(__n/2))
__nma=wma(close,__n)
__diff=__n2ma-__nma
__sqn=round(sqrt(__n))
__n2ma1=2*wma(close[1],round(__n/2))
__nma1=wma(close[1],__n)
__diff1=__n2ma1-__nma1
__n1=wma(__diff,__sqn)
__n2=wma(__diff1,__sqn)
__c=__n1>__n2?green:red

ma=plot(n1,color=c)

// トレンドフィルターも描画
_ma=plot(_n1,color=_c)
__ma=plot(__n1,color=__c)


// and でトレンドフィルターの条件を追加
longCondition = n1>n2 and _n1>__n1
if (longCondition)
strategy.entry("Long", strategy.long)

shortCondition = n1<n2 and _n1<__n1
if (shortCondition)
strategy.entry("Short", strategy.short)
=====
ملاحظة
次の講座
Pine講座59 タートルズ流投資の魔術|ダブル移動平均

إخلاء المسؤولية

لا يُقصد بالمعلومات والمنشورات أن تكون، أو تشكل، أي نصيحة مالية أو استثمارية أو تجارية أو أنواع أخرى من النصائح أو التوصيات المقدمة أو المعتمدة من TradingView. اقرأ المزيد في شروط الاستخدام.