WaveTrend トレンド トレーディング戦略をフォローする

作者: リン・ハーンチャオチャン, 日時: 2023-09-20 15:50:08
タグ:

概要

この戦略は,トレンド方向を決定し,ターニングポイントで取引シグナルを生成するためにWaveTrend指標を使用します.これはトレンドフォロー戦略に属します.

戦略の論理

  1. WaveTrendオシレーターを計算します ポジティブな値は上昇傾向を示し,マイナス値は下落傾向を示します

  2. WaveTrendの方向の変化は 買ったり売ったりする信号を生成します

  3. オプションはロングサイドのみです

  4. WaveTrendのターニングポイントをマークする矢印を有効にする.

  5. 直感的なトレンドビジュアライゼーションのための背景色

  6. シンプルで明快な戦略ルール

利点

  1. WaveTrendは 傾向が早く変わるのを 感知します

  2. 視覚化された矢印と背景の色は 直感的なシグナルを作ります

  3. シンプルで実用的な デフォルトパラメータ

  4. 簡潔なコードで 簡単に理解し 修正できます

  5. ロングやショートだけ取引する柔軟性

リスク

  1. WaveTrendは誤った信号を生成し,不必要な損失を引き起こす可能性があります.

  2. トレンド強さを判定できず 追いかけるリスクがある

  3. 市場では 売れやすい

  4. 不適切なパラメータは性能に悪影響を及ぼします.

  5. ストップ・ロスは大きな損失につながる可能性があります.

強化

  1. テスト パラメータの組み合わせを最適値にします

  2. 偽信号を避けるため,他の指標とフィルターを追加します.

  3. リスク管理のためにストップ・ロスの戦略を組み込む.

  4. 長いか短いかの必要性を評価します.

  5. 市場状況に基づいて矢印を切り替える

  6. より安定した収益を上げるために 資金管理を最適化します

結論

この戦略はWaveTrend方向の変化を単純で実行可能に取引しますが,いくつかのリスクがあります.パラメータ最適化,ストップ,フィルターなどの改善により,安定し効率的なトレンドフォローシステムになります.


/*backtest
start: 2023-09-12 00:00:00
end: 2023-09-19 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// (c) Noro
//2017

//@version=2

strategy(title="Noro's WaveTrend Strategy v1.0", shorttitle = "WaveTrend str 1.0", overlay = true)

//settings
onlylong = input(true, title = "Only Long?")
usearr = input(true, title = "Need new-trend-arrows?")

//WTO ("WaveTrend Oscilator") method by LazyBear
//Start of LazyBear's code
esa = ema(hlc3, 10)
d = ema(abs(hlc3 - esa), 10)
ci = (hlc3 - esa) / (0.015 * d)
tci = ema(ci, 21)
//End of LazyBear's code

WTOtrend = tci > 0 ? 1 : tci < 0 ? -1 : 0

//background
col = WTOtrend == 1 ? 1 : WTOtrend == -1 ? -1 : col[1]
bgcolor = col == 1 ? lime : col == -1 ? red : na
bgcolor(bgcolor, transp=70)

//arrows
posi = WTOtrend == 1 ? 1 : WTOtrend == -1 ? -1 : posi[1]
arr = usearr == true ? posi == 1 and posi[1] < 1 ? 1 : posi == -1 and posi[1] > -1 ? -1 : na : na
plotarrow(arr == 1 ? 1 : na, title = "UpArrow", colorup = blue, colordown = blue, maxheight = 60, minheight = 50, transp = 0)
plotarrow(arr == -1 ? -1 : na, title = "DnArrow", colorup = blue, colordown = blue, maxheight = 60, minheight = 50, transp = 0)

//trading
longCondition = posi == 1 and posi[1] < 1
if (longCondition)
    strategy.entry("Long", strategy.long)

shortCondition = posi == -1 and posi[1] > -1
if (shortCondition)
    strategy.entry("Short", strategy.short, onlylong == true ? 0 : na)

もっと