Kodlama yardımı - sayfa 222

 

Altoronto kodu ve kodlaması için teşekkürler,

Çok teşekkürler, bir sonraki adıma hazırım

 

Altoronto'ya teşekkürler,

Bu kod için bir sonraki adım, tüm periyotlar için aynı satırı belirlemek, aynı noktada, gün içinde değişiklik yok, mum için ilk dakika 00:00'da devam eden gün için.

Daha iyi anlaşılması için açıklamalı bir resim ekledim:

Bunu kodlamama ve göstergeye kodlamama yardım edebilir misiniz?

Tekrar teşekkürler,

Sonunda bu işe yararsa, bana yardım edenlere bir şişe güzel Şili şarabı göndereceğim.

Tekrar teşekkürler,

Daniel1983

Dosyalar:
 
daniel1983:
Altoronto'ya teşekkürler,

Bu kod için bir sonraki adım, tüm periyotlar için aynı satırı belirlemek, aynı noktada, gün içinde değişiklik yok, mum için ilk dakika 00:00'da devam eden gün için.

Daha iyi anlaşılması için açıklamalı bir resim ekledim:

Bunu kodlamama ve göstergeye kodlamama yardım edebilir misiniz?

Tekrar teşekkürler,

Sonunda bu işe yararsa, bana yardım edenlere bir şişe güzel Şili şarabı göndereceğim.

Tekrar teşekkürler,

Daniel1983

Daniel1983

İlk kapalı barı yüksek ve düşük kullanıyorsanız, gün içinde değişiklikler olacaktır.

 

Bay Mladen,

Neden gün içinde değişiklikler olacak? Ben sadece HER GÜNÜN ilk mumu için hesap yapmayı düşünüyorum. Aşağıdaki mumlar değil, anlamayın

1. günün t=1'inde 1. günün t= 0'ı için hesap yapın, sonuç bir çizgi çizin

sadece göstergeyi kullandığınız gün için, günün 23:59'unda 1. mum için gösterge fiyatı ertesi güne kadar çalışmayı durdurun

ertesi gün

2. günün t=1'inde 2. günün t= 0'ı için hesap yapın, sonuç bir çizgi çizin

umarım burası daha açıktır

 
daniel1983:
Bay Mladen,

Neden gün içinde değişiklikler olacak? Ben sadece HER GÜNÜN ilk mumu için hesap yapmayı düşünüyorum. Aşağıdaki mumlar değil, anlamayın

1. günün t=1'inde 1. günün t= 0'ı için hesap yapın, sonuç bir çizgi çizin

sadece göstergeyi kullandığınız gün için, günün 23:59'unda 1. mum için gösterge fiyatı ertesi güne kadar çalışmayı durdurun

ertesi gün

2. günün t=1'inde 2. günün t= 0'ı için hesap yapın, sonuç bir çizgi çizin

umarım burası daha açıktır

daniel1983

Yüksek[1] ve Düşük[1], mevcut grafiğin ilk kapalı çubuğunun yüksek ve düşük anlamına gelir. Bu grafik günlük bir grafik değilse, gün içi değişimleri en yüksek ve en düşük değişim olarak alırsınız. Ayrıca, her durumda, ancak günlük grafiği kullandığınızda, farklı zaman dilimlerinden gelen bir veri karışımınız olur.

 

Tamam Mladen, bir anlayayım, sanırım sorun şu ki, aynı kodda 2 zaman dilimini karıştırıyorum, yani sadece 1 zaman dilimi kullanırsam, örneğin 1 dakikalık çizelge için her şey işe yarayacaktır:

her şeyi bir dakikalık grafik için yapalım,

satırın olacağı yerde kod formülü fiyat =

çift dakikaAçık = iOpen(BOŞ,PERIOD_M1,1);

çift sayı = (dakikaAçık+Yüksek[1]+Düşük[1])/3;

bu şekilde hesaplanan fiyata Yatay çizgi kodunun t=1 olması gerektiğini düşünüyorum, ancak çalışmıyor

//+------------------------------------------- -------------------+

//| Özel gösterge başlatma işlevi |

//+------------------------------------------- -------------------+

int init()

{

//----

dönüş(0);

}

int tanım() {

Yorum("");

ObjectDelete("KeyLine");

dönüş(0);

}

//+------------------------------------------- -------------------+

//| Özel gösterge yineleme işlevi |

//+------------------------------------------- -------------------+

int başlangıç()

{

çift dakikaAçık = iOpen(BOŞ,PERIOD_M1,1);

çift sayı = (dakikaAçık+Yüksek[1]+Düşük[1])/3;

Comment("Anahtar Satır: ",sayı);

ObjectDelete("KeyLine");

ObjectCreate("KeyLine", OBJ_HLINE,1, CurTime(),sayı);

ObjectSet("KeyLine",OBJPROP_COLOR,Turuncu);

ObjectSet("KeyLine",OBJPROP_STYLE,STYLE_SOLID);

NesnelerRedraw();

dönüş(0);

}

 
daniel1983:
Tamam Mladen, bir anlayayım, sanırım sorun şu ki, aynı kodda 2 zaman dilimini karıştırıyorum, yani sadece 1 zaman dilimi kullanırsam, örneğin 1 dakikalık çizelge için her şey işe yarayacaktır:

her şeyi bir dakikalık grafik için yapalım,

satırın olacağı yerde kod formülü fiyat =

çift dakikaAçık = iOpen(BOŞ,PERIOD_M1,1);

çift sayı = (dakikaAçık+Yüksek[1]+Düşük[1])/3;

bu şekilde hesaplanan fiyata Yatay çizgi kodunun t=1 olması gerektiğini düşünüyorum, ancak çalışmıyor

//+------------------------------------------- -------------------+

//| Özel gösterge başlatma işlevi |

//+------------------------------------------- -------------------+

int init()

{

//----

dönüş(0);

}

int tanım() {

Yorum("");

ObjectDelete("KeyLine");

dönüş(0);

}

//+------------------------------------------- -------------------+

//| Özel gösterge yineleme işlevi |

//+------------------------------------------- -------------------+

int başlangıç()

{

çift dakikaAçık = iOpen(BOŞ,PERIOD_M1,1);

çift sayı = (dakikaAçık+Yüksek[1]+Düşük[1])/3;

Comment("Anahtar Satır: ",sayı);

ObjectDelete("KeyLine");

ObjectCreate("KeyLine", OBJ_HLINE,1, CurTime(),sayı);

ObjectSet("KeyLine",OBJPROP_COLOR,Turuncu);

ObjectSet("KeyLine",OBJPROP_STYLE,STYLE_SOLID);

NesnelerRedraw();

dönüş(0);

}

Numara

Bunu şöyle yapmalısın:

double number = )iOpen(NULL,PERIOD_D1,1)+iHigh(NULL,PERIOD_D1,1)+iLow(NULL,PERIOD_D1,1))/3

Ve bu şekilde günlük verilerden tüm verileri alacaksınız (farklı zaman dilimlerinden gelen zaman verileri yok)

 

Teşekkürler Mladen,

Belki de çok hızlı gittiğimi düşünüyorum. Herhangi bir formül girmeden biraz geriye gidelim, baştan başlayalım, göstergenin sadece aşağıdaki görevi yapmasını sağlayalım:

Her günün ilk dakika mumunun açılış fiyatından , 00:01 dakikadaki mumdan tek bir yatay çizgi çizin ve 23:59 dakikasında silin.

Bu hattın fiyatı, silindiği saat 23:59'a kadar tüm dönemlerde aynı fiyatta değişmez ve ertesi gün 00:01'de yeniden başlar.

Bu nasıl olurdu?

 
daniel1983:
Teşekkürler Mladen,

Belki de çok hızlı gittiğimi düşünüyorum. Herhangi bir formül girmeden biraz geriye gidelim, baştan başlayalım, göstergenin sadece aşağıdaki görevi yapmasını sağlayalım:

Her günün ilk dakika mumunun açılış fiyatından, 00:01 dakikadaki mumdan tek bir yatay çizgi çizin ve 23:59 dakikasında silin.

Bu hattın fiyatı, silindiği saat 23:59'a kadar tüm dönemlerde aynı fiyatta değişmez ve ertesi gün 00:01'de yeniden başlar.

Bu nasıl olurdu?

Gönderdiğim formülü kullanırsanız, aynen böyle davranacaktır: gün değişir değişmez, değer de değişecek ve ertesi güne kadar sabit kalacaktır.

 

Teşekkürler Mladen, değişiklikleri yaptım, gösterge buna benziyor ama yine de grafikte hiçbir şey yapmıyor...

//------------------------------------------------ ------------------

#özellik telif hakkı "www.forex-tsd.com"

#özellik bağlantısı "www.forex-tsd.com"

//------------------------------------------------ ------------------

//+------------------------------------------- -------------------+

//| Özel gösterge başlatma işlevi |

//+------------------------------------------- -------------------+

int init()

{

//----

dönüş(0);

}

int tanım() {

Yorum("");

ObjectDelete("KeyLine");

dönüş(0);

}

//+------------------------------------------- -------------------+

//| Özel gösterge yineleme işlevi |

//+------------------------------------------- -------------------+

int başlangıç()

{

çift sayı = (iOpen(NULL,PERIOD_D1,1)+iYüksek(NULL,PERIOD_D1,1)+iLow(NULL,PERIOD_D1,1))/3;

Comment("Anahtar Satır: ",sayı);

ObjectDelete("KeyLine");

ObjectCreate("KeyLine", OBJ_HLINE,1, CurTime(),sayı);

ObjectSet("KeyLine",OBJPROP_COLOR,Turuncu);

ObjectSet("KeyLine",OBJPROP_STYLE,STYLE_SOLID);

NesnelerRedraw();

dönüş(0);

}

Şimdi neyi yanlış yapıyorum?

Teşekkür ederim