
この戦略は,上位時間枠 ((HTF) のZigZag指標を使用して,下位時間枠 ((LTF) にZigZag経路を描き,HTF線の開値と閉値に基づいて取引シグナルを生成する.戦略の主な考え方は,HTFのトレンド方向を利用してLTFの取引決定を導くことであり,同時に,キーサポートとレジスタンス位置を決定するためにZigZag指標を使用することです.
HTFジグザグパスの戦略は,高水準のタイムフレームのジグザグ指標を利用して,低水準のタイムフレームにジグザグの経路を描き,HTF線の開値と閉値に基づいて取引シグナルを生成する.この戦略の優点は,HTFのトレンド方向を利用してLTFの取引決定を導くことであり,同時に重要なサポートとレジスタンス位置を特定するためにジグザグ指標を使用することです.しかし,戦略には,重要な価格変化の情報を逃す可能性,ジグザグ指標が誤った信号を生成する可能性があるなどのリスクもあります.戦略を最適化するために,より多くの技術指標を導入し,ジグザグ指標のパラメータを最適化し,リスク管理とポジション制御モジュールを追加し,基本面と市場情緒分析の側面を考慮し,検討することができます.
/*backtest
start: 2023-04-22 00:00:00
end: 2024-04-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("HTF Zigzag Path Strategy", overlay=true, max_boxes_count=500)
// Kullanıcıdan alınan HTF zaman çerçevesi (15 dakika)
htf_timeframe = input.timeframe("15", title="Higher Time Frame")
// Renk ayarlarını belirleme
upColor = input.color(color.white, title="Bullish Candle Color")
downColor = input.color(color.white, title="Bearish Candle Color")
zigzagColor = input.color(color.black, title="Zigzag Line Color")
// HTF verilerini almak
[htfO, htfH, htfL, htfC, htfOpenTime, htfCloseTime] = request.security(syminfo.tickerid, htf_timeframe, [open, high, low, close, time, time_close])
// Geçmiş yüksek ve düşük noktaları saklamak için değişkenler
var float prevHigh = na
var float prevLow = na
// Zigzag çizgilerini saklamak için bir dizi oluşturma
// var line[] zigzag_lines = array.new_line()
// LTF grafikte HTF mum çubuklarını göstermek için kutular oluşturma
// HTF mum çubukları kutuları
// box.new(left=htfOpenTime, top=htfH, right=htfCloseTime, bottom=htfL, border_color=downColor, border_width=1, xloc=xloc.bar_time)
// box.new(left=htfOpenTime, top=htfO, right=htfCloseTime, bottom=htfC, border_color=upColor, border_width=1, xloc=xloc.bar_time)
// Zigzag yolu oluşturmak için yüksek ve düşük noktaları bağlama
if na(prevHigh) or na(prevLow)
prevHigh := htfH
prevLow := htfL
else
// Zigzag çizgilerini çiz
// line.new(x1=bar_index - 1, y1=prevHigh, x2=bar_index, y2=htfH, color=zigzagColor, width=2)
// line.new(x1=bar_index - 1, y1=prevLow, x2=bar_index, y2=htfL, color=zigzagColor, width=2)
// Geçmiş yüksek ve düşük noktaları güncelle
prevHigh := htfH
prevLow := htfL
// Örnek işlem stratejisi
// HTF mum çubuklarının açılış ve kapanış fiyatına göre alım ve satım sinyalleri
longSignal = htfC < htfO // Eğer HTF mum çubuğunun kapanışı açılışından düşükse, alım sinyali ver
shortSignal = htfC > htfO // Eğer HTF mum çubuğunun kapanışı açılışından yüksekse, satım sinyali ver
// Alım işlemi
if longSignal
strategy.entry("Alım", strategy.long)
// Satım işlemi
if shortSignal
strategy.entry("Satım", strategy.short)