Donem Cevir

DonemCevir Fonksiyonu

Fonksiyonun Kullanım Şekli
  • Sistem.DonemCevir(Veriler, UstDonemVerileri, UstDonemCevrilecekData)
Fonksiyonun Amacı

Bir sembolün herhangi bir periyodunun verilerini veya o periyoda ait verilerden elde edilen hesaplanmış listeleri/indikatörleri daha küçük periyotta çizdirebilmek için DonemCevir fonksiyonu hazırlanmıştır.

Örnek: Bir senedin günlük periyotta gördüğü en yüksek ve en düşük değerleri, aynı senedin günlük grafiği üzerine çizdirmek, Günlük grafikteki bir hareketli ortalamasını daha küçük zaman dilimli grafikte görmek.

Örnek Kullanım-1

ÖRNEK: VIP30 5 DK Grafiğinin altına, XU030 ve USDTRY kodlarının 5 dk grafiklerinin kapanışlarını bir indikatör gibi çizdirmek.
//üst periyot verilerini oku
var UstBars = Sistem.GrafikVerileriniOku(Sistem.Sembol,”H”);
var KPN0 = Sistem.Liste(0);
var KPN1 = Sistem.Liste(0);
var Fark = Sistem.Liste(0);

for (int i = 1; i < UstBars.Count; i++)
{
KPN0[i] = UstBars[i].Close; //Haftalık kapanışlar
KPN1[i] = UstBars[i-1].Close; // Haftalık kapanışların birer bar öncesi
Fark[i] = 100 * ((KPN0[i] – KPN1[i] ) / KPN1[i]); //Haftalık kapanışların yüzde değişim farkı
}

//Verileri hizala
var Hizali0 = Sistem.DonemCevir(Sistem.GrafikVerileri, UstBars, KPN0);
var Hizali1 = Sistem.DonemCevir(Sistem.GrafikVerileri, UstBars, KPN1);
var HizaliFark = Sistem.DonemCevir(Sistem.GrafikVerileri, UstBars, Fark);

Sistem.Cizgiler[0].Deger = Hizali0;
Sistem.Cizgiler[1].Deger = Hizali1;
Sistem.Cizgiler[2].Deger = HizaliFark;
Sistem.Cizgiler[3].Deger = Sistem.Liste(0);

//Panelden çizgi numaraları, renkleri, kalınlık ve stileri aşağıdaki gibidir.
Grafikteki Görüntü Aşağıdaki gibidir.

Örnek Kullanım-2

ÖRNEK: ÖNCEKİ GÜNÜN YÜKSEK VE DÜŞÜK DEĞERİNİ ALT PERİYOTTA ÇİZDİRMEK.
//Panelden ilk iki çizgi aktif edilir. Panel numaraları 1’dir.

//üst periyot verilerini oku
var UstBars = Sistem.GrafikVerileriniOku(Sistem.Sembol,”G”);
var H = Sistem.Liste(0);
var L = Sistem.Liste(0);
for (int i = 1; i < UstBars.Count; i++)
{
H[i] = UstBars[i-1].High;
L[i] = UstBars[i-1].Low;
}

//Verileri hizala
var HH = Sistem.DonemCevir(Sistem.GrafikVerileri, UstBars, H);
var LL = Sistem.DonemCevir(Sistem.GrafikVerileri, UstBars, L);

//ekranda çizgi olarak göster
Sistem.Cizgiler[0].Deger = HH;
Sistem.Cizgiler[1].Deger = LL;

Örnek Kullanım-3

Bir sembolün Haftalıktan daha düşük bir periyodunda, ENDEKS100’ün haftalık yüksek/düşük ve kapanışının grafik üzerine, Endeks100 ve grafiği bakılan sembolün o periyotları için hesaplanan TOMA indikatörlerinin de grafik altında çizdirilmesi örneği.
var Sembol = “IMKBX’XU100”;
var Endeks = Sistem.GrafikVerileriniOku(Sembol, “G”);
Endeks = Sistem.GrafikVerilerindeTarihHizala(Sistem.GrafikVerileri, Endeks);

var Veriler = Sistem.GrafikVerileriniOku(Sembol, “60”);
Veriler = Sistem.GrafikVerilerindeTarihHizala(Sistem.GrafikVerileri, Veriler);

var HAFTA = Sistem.GrafikVerileriniOku(Sistem.Sembol, “H”);
var KapHafta = Sistem.GrafikFiyatOku(HAFTA, “Kapanis”);
var YkHafta = Sistem.GrafikFiyatOku(HAFTA, “Yuksek”);
var DskHafta = Sistem.GrafikFiyatOku(HAFTA, “Dusuk”);
var C =Sistem.DonemCevir(Sistem.GrafikVerileri, HAFTA , KapHafta );
var H =Sistem.DonemCevir(Sistem.GrafikVerileri, HAFTA , YkHafta );
var D =Sistem.DonemCevir(Sistem.GrafikVerileri, HAFTA , DskHafta );

var toma3 = Sistem.TOMA(Endeks,6,2); // günlük ve üstü periyotlar çizgiler1 bu değişken olmalı
var toma2 = Sistem.TOMA(Veriler,6,2); // alt periyotlarda çizgiler1 bu değişken olmalı

Sistem.Cizgiler[0].Deger=Sistem.TOMA(6,2);
Sistem.Cizgiler[1].Deger=toma2;
Sistem.Cizgiler[2].Deger=C;
Sistem.Cizgiler[3].Deger=H;
Sistem.Cizgiler[4].Deger=D;

PANEL DURUMU:

GRAFİKTEKİ GÖRÜNÜM:

Daha Fazla Bilgiye mi İhtiyacınız Var?

Ürünlerimiz veya hizmetlerimizle ilgili yardıma ihtiyacınız varsa, lütfen bizimle temasa geçin.