
Originally Posted by
Eski26
Selamlar, yeni idealde kod yazmayı öğrenmeye başladım. Bilgim sıfır. Sağdan soldan bulduklarımı birleştirip videolardan gördüklerimi yapmaya çalışıyorum. Aşağıda bir kalıp var. Ben indikatör değişkenlerini değiştirerek denemeler yapmak istiyorum ancak sanırım kalıbı yapamadım sonuç alamıyorum. Hatayı anlamam için yardımınızı rica ediyorum.
çok fazla şey birleştirmişsin,
optimizasyon dan tut ta işin show kısmına kadar
şu kadarcık kod şimdilik test için idare eder.
öğrendikçe fazlalıkları ilave edersiniz.
Kod:
var V = Sistem.GrafikVerileri;
var C = Sistem.GrafikFiyatSec("Kapanis");
var H = Sistem.GrafikFiyatSec("Yuksek");
var L = Sistem.GrafikFiyatSec("Dusuk");
var MA = Sistem.MA(C,"Variable",30);
var MA1 = Sistem.MA(MA, "Exp", 60);
var TRIX = Sistem.TRIX(25);
var TRIXAVR = Sistem.MA(TRIX, "Exp", 60);
var SonYon = "";
double SonFiyat = 0.0;
var FlatOncesiYon = "";
var Sinyal = "";
float GunKZ = 0f;
int BarNo = 0;
for (int i = 1; i < V.Count; i++)
{
if (MA[i] > MA1[i] && TRIX[i] > TRIXAVR[i]) Sinyal = "A";
if (MA[i] < MA1[i] && TRIX[i] < TRIXAVR[i]) Sinyal = "S";
// STOP VE KAR AL //
if (SonYon == "A" && C[i] < SonFiyat * 0.97) Sinyal = "F";
if (SonYon == "S" && C[i] > SonFiyat * 1.03) Sinyal = "F";
// if (SonYon == "A" && C[i] < SonFiyat * 0.992) Sinyal = "F";
// if (SonYon == "S" && C[i] > SonFiyat * 1.008) Sinyal = "F";
// Yön Kalıbı
if (Sinyal == "A" && SonYon != "A")
{
Sistem.Yon[i] = "A";
SonYon = Sistem.Yon[i];
SonFiyat = V[i].Close;
BarNo = i;
}
if (Sinyal == "S" && SonYon != "S")
{
Sistem.Yon[i] = "S";
SonYon = Sistem.Yon[i];
SonFiyat = V[i].Close;
BarNo = i;
}
if (Sinyal == "F" && SonYon != "F")
{
Sistem.Yon[i] = "F";
SonYon = Sistem.Yon[i];
SonFiyat = V[i].Close;
}
}
{ Sistem.GetiriHesapla("01.01.2020", 0.0f);
var KarZarar = Sistem.GetiriKZ;
Sistem.Cizgiler[6].Deger = KarZarar;
Sistem.Cizgiler[6].Stil=1;
Sistem.Cizgiler[6].Panel = 2;
Sistem.Cizgiler[6].Aciklama = "NET_K/Z";
Sistem.Cizgiler[6].ActiveBool = true;
var isay = Sistem.GetiriToplamIslem;
Sistem.ZeminYazisiEkle(" İşlem Adet "+isay.ToString("0") , 2, 300, 15, Color.White , "Tahoma", 8);
Sistem.ZeminYazisiEkle("Kâr_Zarar "+ (KarZarar[KarZarar .Count-1]).ToString("0.00") + " puan", 2, 500, 15, KarZarar[KarZarar.Count-1] > 0 ? Color.Green : Color.Red , "Tahoma", 8);
}
Yer İmleri