Sorgu taraması yapar iken karşıma çıkan verileri hisse üzerinde bakmak istediğimde hisse datalarını güncellemek gerektiğini farkkettim. Hisse dataları otomatik arka planda inmiyor mu?
Syg.
Yav arkadaş bu idealin dilini öğrenmek büyük bir eziyet . İdealin yazdıgı formülleri inceliyorum. Sadece fiyatın 5 lik emanın kesmesine dayanan bir formül için 100 satırlık formül yazılmış. Aşama aşama anlatın, satır,satır anlatın 2 sayfa döküman ekleyin. Sıfırdan öğrenir gibi bizde öğrenelim.
Sanki sınırlı bir kitle öğrensin kullansın diye bir amaç güdülmüş.
Volume Weighted Moving Average kodlaması paylaşıldı mı daha önce acaba?
Merhabalar
İdealde var olan YataySeviyeler isimli kodu bahsedeceğim şekilde değiştirmek istiyorum, yardımcı olur musunuz?
2 tane seviye seçeceği olacak manuel olarak 2 rakam belirticem, rakamlar arası flat olucak onun haricinde üstünde long altında short şeklinde.
Yani Long seviyenin 100 puan üstünde long olcak, aynı seviyenin 100 puan altında flat olcak. aynı işlem short içinde geçerli..
var Seviyeler = new List<float>();
//istediğiniz kadar destek ve direnç seviyeesi ekleyebilirsiniz.
//Seviyeler küçükten büyüğe doğru gitmeli.
Seviyeler.Add(112.000F);
Seviyeler.Add(114.000F);
Seviyeler.Add(116.000F);
Seviyeler.Add(118.000F);
Seviyeler.Add(120.000F);
Seviyeler.Add(122.000F);
Seviyeler.Add(124.000F);
var V = Sistem.GrafikVerileri;
var C = Sistem.GrafikFiyatSec("Kapanis");
for (int i = 0; i < Seviyeler.Count; i++)
{
Sistem.Cizgiler[i + 10].ActiveBool = true;
Sistem.Cizgiler[i + 10].Deger = Sistem.Liste(Seviyeler[i]);
Sistem.Cizgiler[i + 10].Panel = 1;
Sistem.Cizgiler[i + 10].Renk = Color.IndianRed;
Sistem.Cizgiler[i + 10].Stil = 2;
}
var KesimYonu = 0;
var KesimSeviyesi = 0.0;
var Adim = 0.250f; //Çizgi kırıldıktan sonra 250 puan daha giderse AL (vey SAT)
var SonYon = "";
for (int i = 1; i < V.Count; i++)
{
for (int j = 0; j < Seviyeler.Count; j++)
{
if (C[i - 1] < Seviyeler[j] && C[i] >= Seviyeler[j])
{
KesimYonu = 1;
KesimSeviyesi= Seviyeler[j];
}
else if (C[i - 1] > Seviyeler[j] && C[i] <= Seviyeler[j])
{
KesimYonu = -1;
KesimSeviyesi = Seviyeler[j];
}
}
if (KesimYonu == 1 && C[i] >= KesimSeviyesi + Adim && SonYon != "A")
{
Sistem.Yon[i] = "A";
SonYon = Sistem.Yon[i];
KesimYonu = 0;
}
if (KesimYonu == -1 && C[i] <= KesimSeviyesi - Adim && SonYon != "S")
{
Sistem.Yon[i] = "S";
SonYon = Sistem.Yon[i];
KesimYonu = 0;
}
}
|
|
İşinize yararsa elimde aşağıdaki gibi bir kod var..
var Per = 50;
var C = Sistem.GrafikFiyatSec("Kapanis");
var Lot = Sistem.GrafikFiyatSec("Lot");
var VAMA = Sistem.Liste(0);
for (int i = Per+100; i < Sistem.BarSayisi; i++)
{
var Hacim = 0.0;
var Lotlar = 0.0;
for (int j = 0; j < Per; j++)
{
Hacim += (Lot[i-j] * C[i-j]) ;
Lotlar += Lot[i-j];
}
if (Lotlar != 0)
VAMA[i] = (float)(Hacim/Lotlar);
}
Sistem.Cizgiler[0].Deger = VAMA;
Yer İmleri