• Welcome back! Thank you for being a part of this Traders Community. Let's discuss and share :)
    Selamat datang kembali! Trimakasih telah menjadi bagian dari Komunitas Trader ini. Mari berdiskusi dan berbagi :)

Suggestion MASALAH VALUE ZIGZAG

zeref

New Member
Credits
0
upload_2025-1-27_13-33-26.png

Halo teman-teman apakah ada yang tau cara ambil value zigzag lower low atau higher high sebelumnnya ?
kode saya seperti ini
apakah bisa di bantu


void OnTick()
{
//---
//---
double Ask;
double Bid;
int Spread;
double ZigZagHigh = iCustom(Symbol(), 0, "ZigZag", 12, 5, 3, 0, 0); // Puncak tertinggi (Higher High)
double ZigZagLow = iCustom(Symbol(), 0, "ZigZag", 12, 5, 3, 0, 1); // Lembah terendah (Lower Low)
double ParabolicSAR = iSAR(NULL, 0, 0.02, 0.2, 0);


Ask=SymbolInfoDouble(Symbol(),SYMBOL_ASK);
Bid=SymbolInfoDouble(Symbol(),SYMBOL_BID);
Spread=SymbolInfoInteger(Symbol(),SYMBOL_SPREAD);
//--- Output values in three lines
Comment(StringFormat("Show prices\nAsk = %G\nBid = %G\nSpread = %d\nVolume = %d\nzigzighigh = %G\nzigziglow = %G",Ask,Bid,Spread,Volume[0],ZigZagHigh,ZigZagLow));
if(Volume[0] > 1 )return;





}
 

Attachments

  • upload_2025-1-27_13-33-26.png
    upload_2025-1-27_13-33-26.png
    218.8 KB · Views: 67
double GetPreviousZigZagValue(int mode) {
// mode = 0 untuk Higher High (puncak)
// mode = 1 untuk Lower Low (lembah)

for (int i = 1; i < 20; i++) { // Loop 20 candle ke belakang
double zz_value = iCustom(Symbol(), 0, "ZigZag", 12, 5, 3, 0, i);
if (zz_value > 0) return zz_value; // Jika menemukan nilai valid, kembalikan
}
return 0; // Jika tidak ditemukan, return 0
}

void OnTick() {
double Ask = SymbolInfoDouble(Symbol(), SYMBOL_ASK);
double Bid = SymbolInfoDouble(Symbol(), SYMBOL_BID);
int Spread = SymbolInfoInteger(Symbol(), SYMBOL_SPREAD);

// Cari nilai Higher High & Lower Low sebelumnya
double ZigZagHighPrev = GetPreviousZigZagValue(0); // Puncak sebelumnya
double ZigZagLowPrev = GetPreviousZigZagValue(1); // Lembah sebelumnya
double ParabolicSAR = iSAR(NULL, 0, 0.02, 0.2, 0);

Comment(StringFormat(
"Show prices\nAsk = %G\nBid = %G\nSpread = %d\nzigzighigh_prev = %G\nzigziglow_prev = %G",
Ask, Bid, Spread, ZigZagHighPrev, ZigZagLowPrev
));

if (Volume[0] > 1) return;
}


bantu menyelesaikan kode ku juga ya
https://soehoe.id/pullback-trend-following-with-sar-breakout.t31090/
 
Back
Top