[ARŞİV] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 3. - sayfa 256

 
Ivan1 :

Herkese selam. Lütfen yardım edin: Mevcut "MACD sütununun" değerini değişkene ve bir öncekinin değerini ikinci değişkene atamam gerekiyor...

Ivan, temel MACD Örnek Uzman Danışmanına bakın.
MacdCurrent= iMACD ( NULL , 0 , 12 , 26 , 9 , PRICE_CLOSE ,MODE_MAIN, 0 ); // последняя цифра задает показатель
MacdPrevious= iMACD ( NULL , 0 , 12 , 26 , 9 , PRICE_CLOSE ,MODE_MAIN, 1 );
 
Ivan1 :
sadece MACD histogramının oranı - öncekiyle mevcut göstergesi, bu yüzden onları değişkenlere atamam gerekiyor

linke baktın mı

vurgularla çoğaltın:

double iMACD ( string sembolü, int zaman çerçevesi, int fast_ema_period, int slow_ema_period, int sinyal_period, int uygulanan_fiyat, int modu, int shift)

semboller - Göstergenin hesaplanacağı sembolün sembolik adı. NULL, geçerli karakter anlamına gelir.
zaman aralığı - Dönem. Grafik dönemlerinden biri olabilir. 0, mevcut grafiğin periyodu anlamına gelir.
fast_ema_period - Hızlı hareket eden ortalamayı hesaplamak için ortalama alma süresi.
slow_ema_period - Yavaş hareket eden ortalamayı hesaplamak için ortalama alma süresi.
sinyal_dönemi - Sinyal hattının hesaplanması için ortalama periyot.
uygulanan_fiyat - Kullanılmış fiyat. Fiyat sabitlerinden herhangi biri olabilir.
mod - Gösterge satırı indeksi. Gösterge satırı ID değerlerinden herhangi biri olabilir.
vardiya - Gösterge arabelleğinden alınan değerin dizini (geçerli çubuğa göre belirtilen dönem sayısı kadar önce kayma).

mod - gösterge satırı indeksi - burada sadece ihtiyacınız olan satırlardan hangisine ihtiyacınız olduğunu yazarsınız - ister çizgi, ister histogram

shift - alınan değerin indeksi. iki değere ihtiyacınız var:

shift = 1 - önceki dizin

shift = 0 - mevcut gösterge

 
Merhaba. Bir şey karıştı. Bir alt pencerede dikey bir çizginin kayması nasıl bulunur?
 

Uzun zaman önce, kâr al ile kapatılan siparişler için "hesap geçmişi"nde, yorumlarda [tp] yazıldığını ve bazı tp/a için...

Fark ne ?

Saygılar Bradman

 
143alex :
Merhaba. Bir şey karıştı. Bir alt pencerede dikey bir çizginin kayması nasıl bulunur?

böyle denedim

 double prise= ObjectGet ( "L" , OBJPROP_PRICE1) ;
   int     shift= ObjectGetShiftByValue ( "L" , prise); 
   Comment ( "1" ,shift);
 
143alex :

böyle denedim


ObjectGetShiftByValue "Eğilim çizgileri ve benzer nesneler için geçerlidir"

iBarShift işlevini kullanın

 
yosuf :
Bu forumda geçenlerde, aynı SL ile aynı anda 2 zıt yönlü emir açarsanız, birini kapattıktan sonra kar elde etmeye çalışabileceğiniz fikrini okudum. Bu fikri deneyen var mı, denemeyen var mı? Belki benzer bir danışman vardır?

Uzman Izgarası v.2.

"Telif Hakkı©2008 EAfactory.com ve Expert-4x.com - "Revizyon: 264""

Pozisyonları her iki yönde açar ve fark pozitifse her ikisini de kapatır.

 

nerede yanlış yaptığımı söyle lütfen... yoksa MT4'ün kendisi bile aptal mı, ama Alış emirlerim sadece çubuğun en üstünde açılıyor ve Satış emirleri sadece çubuğun Kapanışında açılıyor =) Her ne kadar şart koşmamış olsam da EA kodundaki bu koşullar = )

 extern int TP = 200 ; 
     extern int TS = 50 ; 
     extern int TF = 1 ; 
     extern double lots = 0.1 ; 
     extern int Pips = 15 ; 
     extern int MaxPips = 100 ; 


     int slip = 3 ; 
     int Magic = 2 ; 
     int cnt,ticket,total; 

 //+------------------------------------------------------------------+ 
   //| expert initialization function | 
   //+------------------------------------------------------------------+ 
   int init() 
    { 
   //---- 

 //---- 
     return ( 0 ); 
    } 
   //+------------------------------------------------------------------+ 
   //| expert deinitialization function | 
   //+------------------------------------------------------------------+ 
   int deinit() 
    { 
   //---- 

 //---- 
     return ( 0 ); 
    } 
   //+------------------------------------------------------------------+ 
   //| expert start function | 
   //+------------------------------------------------------------------+ 

 int start() 
    { 
   //---- 

 static double PriceOld = 0.0 ; 
 double PriceNow; 
 PriceNow = NormalizeDouble (Bid, 6 ); 

 total = OrdersTotal (); 
 if (total < 1 ) 
 { 
     if ((PriceNow-PriceOld)>=Pips* Point && (PriceNow-PriceOld)<MaxPips* Point ) 
    { 
           ticket = OrderSend ( Symbol (),OP_BUY,lots,Ask,slip,Bid-TS* Point , 0 , 0 ,Magic, 0 , Green ); 
    } 

 if ((PriceNow-PriceOld)<=(-Pips)* Point && (PriceNow-PriceOld)>(-MaxPips)* Point ) 
     { 
           ticket = OrderSend ( Symbol (),OP_SELL,lots,Bid,slip,Ask+TS* Point , 0 , 0 ,Magic, 0 , Red ); 
     } 
 } 


PriceOld = PriceNow;

//---- 


return(0);
}


 
CLAIN :

nerede yanlış yaptığımı söyle lütfen... yoksa MT4'ün kendisi bile aptal mı, ama Alış emirlerim sadece çubuğun en üstünde açılıyor ve Satış emirleri sadece çubuğun Kapanışında açılıyor =) Her ne kadar şart koşmamış olsam da EA kodundaki bu koşullar = )


Tahmin edeyim, muhtemelen bu EA'yı test cihazında " açık fiyatlar " modunda kullanıyorsunuz, çünkü normal modda çalışmamalıdır.
 
mmmm.... olamaz.... "tüm onayları" kullanıyorum... bu yüzden en ilginç şey, satın almanın YÜKSEK'te açılması ve KAPALI'da satılması... Bunun neyle bağlantılı olduğunu anlamıyorum?