Elliott dalga formüllerini Matrik'in borsa programına nasıl entegre edebilirim ki, bana dalga numarasını göstersin, yani dalgaları saysın? Explorer'da bunun için bir formül var mı? Aşağıdaki şekilde denedim. Ama işe yaramadı. Sonuç her zaman 0 oldu. Çözüm için teşekkür ederim.
// Elliott Wave Explorer for Turkish Stocks (BIST)
// ------------------------------------------------------
swingStrength := 3; // Shorter window for volatile markets
minWave3Extension := 1.3; // 130% instead of 161.8% (adapted to BIST)
debugMode := 1; // Enable debug mode
// 1. Identify swing points (adapted to frequent price movements)
wave1Start := Trough(1, Low, swingStrength);
wave1End := Peak(1, High, swingStrength);
wave2End := Trough(2, Low, swingStrength);
wave3End := Peak(2, High, swingStrength);
// 2. Volatility adjustment (avoiding false signals during extreme movements)
wave1Length := If(wave1End - wave1Start > 0, wave1End - wave1Start, 1);
wave2Retrace := (wave1End - wave2End) / wave1Length;
wave3Extension := If(wave1Length > 0, (wave3End - wave2End) / wave1Length, 0);
// 3. Relaxed rules for Turkish stocks
isWave1 := wave1End > wave1Start AND wave1Length > (ATR(14) * 0.5); // Minimum movement = 0.5x ATR
isWave2 := wave2Retrace >= 0.2 AND wave2Retrace <= 1.0; // Retracement up to 100% allowed
isWave3 := wave3Extension >= minWave3Extension;
// 4. Debugging information
If debugMode = 1 Then Begin
AddColumn(wave1Start, "W1 Start", 2.2);
AddColumn(wave1End, "W1 End", 2.2);
AddColumn(wave2End, "W2 End", 2.2);
AddColumn(wave3Extension, "W3 Extension", 1.2);
AddColumn(ATR(14), "ATR(14)", 2.2); // Volatility check
End;
// 5. Wave phase
wavePhase := If(isWave3, 3, If(isWave2, 2, If(isWave1, 1, 0)));
// 6. Filter
Filter := wavePhase >= 1;
AddColumn(wavePhase, "Current Wave", 1.0);