![Alıntı](images/misc/quote_icon.png)
Originally Posted by
erdem86
mesala bu sistemde sabit stop, iz süren stop, kar al tetiklendiğinde bar kapanışını beklemeden emir gönderimini nasıl yazabiliriz?
var V = Sistem.GrafikVerileri;
var C = Sistem.GrafikFiyatOku(V, "Kapanis");
var STOSK = Sistem.MA(Sistem.StochasticFast(220, 1), "Variable", 170);
var STOSD = Sistem.MA(STOSK, "Variable", 30);
var STOSK2 = Sistem.MA(Sistem.StochasticFast(300, 1), "Variable", 90);
var STOSD2 = Sistem.MA(STOSK2, "Variable", 100);
var STOSK3 = Sistem.MA(Sistem.StochasticFast(210, 1), "Variable", 140);
var STOSD3 = Sistem.MA(STOSK3, "Variable", 110);
var STOSK4 = Sistem.MA(Sistem.StochasticFast(80, 1), "Variable", 40);
var STOSD4 = Sistem.MA(STOSK4, "Variable", 50);
var TILL = Sistem.TillsonT3(C, 35, 1.2);
var TILL2 = Sistem.TillsonT3(C, 135, 0.7);
var TILL3 = Sistem.TillsonT3(C, 60, 1.5);
var TILL4 = Sistem.TillsonT3(C, 100, 0.2);
var MOST = Sistem.TOMA(3, 2, "Variable");
var RSI = Sistem.RSI(C,10);
var SartAL = false;
var SartSAT = false;
var SonYon = "";
var IZLEYENSTOP = Sistem.Liste(0);
var KARAL = Sistem.Liste(0);
var Fiyat = 0.0f;
for(int i=1; i < Sistem.BarSayisi;i++)
{
IZLEYENSTOP[i] = Sistem.IzleyenStopYuzde(3,i);
if (IZLEYENSTOP[i] == 0) IZLEYENSTOP[i] = C[i];
KARAL[i] = Sistem.KarAlYuzde(22.8,i);
if (KARAL[i] == 0) KARAL[i] = C[i];
SartAL = C[i] > MOST[i] ? TILL[i] > TILL[i-1] && RSI[i] < 40 && STOSK[i] > STOSD[i] : TILL2[i] > TILL2[i-1] && RSI[i] < 30 && STOSK2[i] > STOSD2[i];
SartSAT = C[i] > MOST[i] ? TILL3[i] < TILL3[i-1] && STOSK3[i] < STOSD3[i] : TILL4[i] < TILL4[i-1] && STOSK4[i] < STOSD4[i];
if(SartAL && SonYon != "A")
{
SonYon = "A";
Sistem.Yon[i] = "A";
Fiyat = C[i];
}
else if(SartSAT && SonYon != "F")
{
SonYon = "F";
Sistem.Yon[i] = "F";
}
else if ((C[i] < IZLEYENSTOP[i] || C[i] >= KARAL[i]) && SonYon == "A") // alıştan flate
{
SonYon = "F";
Sistem.Yon[i] = "F";
}
else if(C[i] < Fiyat * 0.99F && SonYon == "A")
{
SonYon = "F";
Sistem.Yon[i] = "F";
}
}
Yer İmleri