Merhabalar,
Kurgularken her iki indikatörün de onayını istediğinizden AND koşulu kullanmalısınız.
Bu sebeple de ya, "MACD/TRIGGER kesişimi ve SUPERTREND al versin" yapısını (aşağıda paylaşılmıştır.)
public override void OnDataUpdate(BarDataCurrentValues barDataCurrentValues)
{
var barData1 = GetBarData(Symbol1, SymbolPeriod1);
var ohlcData1 = GetSelectedValueFromBarData(barData1, OHLCType.Close);
if (CrossAbove(macd, macd.MacdTrigger) && superTrend.Value[0][superTrend.CurrentIndex] < ohlcData1)
{
SendMarketOrder(Alış Koşulu);
Debug("Alış Emri Gönderildi");
}
if (CrossBelow(macd, macd.MacdTrigger) && superTrend.Value[0][superTrend.CurrentIndex] > ohlcData1)
{
SendMarketOrder(Satış Koşulu);
Debug("Satış Emri Gönderildi");
}
Ya da "MACD al versin ve SUPERTREND bardatayı kessin" yapısını kullanmalısınız. (Aşağıda paylaşılmıştır.)
public override void OnDataUpdate(BarDataEventArgs barData)
{
var barData1 = GetBarData(Symbol1, SymbolPeriod1);
if (CrossBelow(superTrend, barData1, OHLCType.Close, 0) && macd.Value[0][macd.CurrentIndex] > macd.Value[1][macd.CurrentIndex])
{
SendMarketOrder(Alış Koşulu);
}
if (CrossAbove(superTrend, barData1, OHLCType.Close, 0) && macd.Value[0][macd.CurrentIndex] < macd.Value[1][macd.CurrentIndex])
{
SendMarketOrder(Satış Koşulu);
}
İyi çalışmalar.