MQL4 ve MQL5 ile ilgili herhangi bir acemi sorusu, algoritmalar ve kodlar hakkında yardım ve tartışma - sayfa 991

 
LuckyTrader :
Hata ayak örtüsünü terk etti, aynı ifadeyle, şimdi başka bir bölüme gitti. Biraz daha yüksek Igor'a yazdım

baskıları hatanın oluştuğu yere yerleştirin, belki en azından bu şekilde sorununuzu çözebilirsiniz

başka yolu yok zaten hatanın sebebini açıkladım

 

Merhaba, göstergeyi MQL4'ten MQL5'e yeniden yazmaya karar verdim ve göstergenin arabelleklerine yapıştırdım... Görünüşe göre ihtiyacım olan her şeyi girdim, ancak gösterge satırı görüntülenmiyor!

İşte bir örnek, son 30 bardaki kapanış fiyatını görüntülemek istiyorum, hatta bir şeyle dolu olup olmadığını görmek için bir yorum olarak bir tampon gösterdim...

Tampon doluyor ve grafik boş, grafikte çizim yok (((

Sorun ne olabilir? MQL5 çubuklarında geriye doğru mb?))


 //+------------------------------------------------------------------+
//|                                                         Test.mq5 |
//|                                                                . |
//|                                                                . |
//+------------------------------------------------------------------+
#property copyright "."
#property link        "."
#property version    "1.00"
#property indicator_chart_window
#property indicator_buffers 8          // Количество буферов индикатора
#property indicator_plots    8          // Количество графических серий

#property indicator_label1 "TestLine" 
#property indicator_type1 DRAW_LINE   
#property indicator_style1 STYLE_SOLID 
#property indicator_width1 1   
#property indicator_color1 Red  
//+------------------------------------------------------------------+
//|                        БУФЕРЫ                                    |
//+------------------------------------------------------------------+
double Buffer1[];
double Buffer2[];
double Buffer3[];
double Buffer4[];
double Buffer5[];
double Buffer6[];
double Buffer7[];
double Buffer8[];
//+------------------------------------------------------------------+
//|                     ПАРАМЕТРЫ БУфЕРА                             |
//+------------------------------------------------------------------+
int OnInit (){                   

SetIndexBuffer ( 0 ,Buffer1, INDICATOR_DATA );
PlotIndexSetInteger ( 0 , PLOT_DRAW_TYPE , DRAW_LINE );  
PlotIndexSetInteger ( 0 , PLOT_LINE_WIDTH , 1 );         
PlotIndexSetInteger ( 0 , PLOT_LINE_COLOR ,Blue);   

return ( INIT_SUCCEEDED );}
//+------------------------------------------------------------------+
//| Деинициализация                                                  |
//+------------------------------------------------------------------+
void OnDeinit ( const int reason){
Comment ( "" );}
//+------------------------------------------------------------------+

//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate ( const int rates_total,
                 const int prev_calculated,
                 const datetime &time[],
                 const double &open[],
                 const double &high[],
                 const double &low[],
                 const double &close[],
                 const long &tick_volume[],
                 const long &volume[],
                 const int &spread[]){
                
                
for ( int Z = 30 ; Z>= 0 ; Z--) {
Buffer1[Z] = iClose ( NULL , 0 ,Z);} 
Comment (Buffer1[ 0 ]);               

return (rates_total);}
//+------------------------------------------------------------------+

 
Nikita Zubarov :

Merhaba, göstergeyi MQL4'ten MQL5'e yeniden yazmaya karar verdim ve göstergenin arabelleklerine yapıştırdım... Görünüşe göre ihtiyacım olan her şeyi girdim, ancak gösterge satırı görüntülenmiyor!

İşte bir örnek, son 30 bardaki kapanış fiyatını görüntülemek istiyorum, hatta bir şeyle dolu olup olmadığını görmek için bir yorum olarak bir tampon gösterdim...

Tampon doluyor ve grafik boş, grafikte çizim yok (((

Sorun ne olabilir? MQL5 çubuklarında geriye doğru mb?))


MQL5'teki çubukların numaralandırılması zıttır

 for ( int Z = rates_total-50; Z<rates_total; Z++)


indeksleme https://www.mql5.com/en/docs/array/arraysetasseries kullanılarak değiştirilebilir
Документация по MQL5: Операции с массивами / ArraySetAsSeries
Документация по MQL5: Операции с массивами / ArraySetAsSeries
  • www.mql5.com
//| Custom indicator initialization function                         | //| Custom indicator iteration function                              |
 
Igor Makanu :

MQL6'daki çubukların numaralandırılması zıttır


indeksleme https://www.mql5.com/en/docs/array/arraysetasseries kullanılarak değiştirilebilir

Teşekkürler!, bir satır ekledim ve normal şekilde göstermeye başladı!

 ArraySetAsSeries (Buffer1, true ); 
ama bana öyle geliyor ki, çubukların numaralandırılması sağdan sola aynı, sadece arabellekler geriye gidiyor....
 
Nikita Zubarov :

Teşekkürler!, bir satır ekledim ve normal şekilde göstermeye başladı!

ama bana öyle geliyor ki, çubukların numaralandırılması sağdan sola aynı, sadece arabellekler geriye gidiyor....

4-ke çubukta 0 numaralı çubuk en sağdaki çubuktur

5-ke çubukta 0 numaralı çubuk en soldaki çubuktur

Varsayılan olarak, gösterge arabelleklerinin indekslenmesi, zaman serileri ile aynıdır

ArraySetAsSeries() kullanırsanız, o zaman yalnızca bir diziye uygulanacaktır - örneğinizde, Buffer1 gösterge arabelleğinin dizisine, doğru hesaplama için, kapatmak için uygulamanız gerekir.

 ArraySetAsSeries (Buffer1, true ); 
ArraySetAsSeries (close, true ); 
for ( int Z = 30 ; Z>= 0 ; Z--) 
{
Buffer1[Z] = сlose[i];
} 

veya döngüyü yukarıdaki gibi değiştirin

 
Merhaba! Lütfen söyleyin, danışmanın mevcut grafikten farklı bir sembol üzerinde pozisyon açmasını istiyorum, sonuç olarak bilgim şimdilik sadece bunun için yeterliydi.
OrderSend(MarketInfo("EURUSD",MODE_ASK), OP_BUY, Lot, Sor, Slip, 0, 0, "", Magic, 0, Mavi)
Haklı mıyım, değilse lütfen düzeltin.
 
Averman :
Merhaba! Lütfen söyleyin, danışmanın mevcut grafikten farklı bir sembol üzerinde pozisyon açmasını istiyorum, sonuç olarak bilgim şimdilik sadece bunun için yeterliydi.
OrderSend(MarketInfo("EURUSD",MODE_ASK), OP_BUY, Lot, Sor, Slip, 0, 0, "", Magic, 0, Mavi)
Haklı mıyım, değilse lütfen düzeltin.

Tabii ki doğru değil.

 OrderSend ( "EURUSD" , OP_BUY, Lots, MarketInfo( "EURUSD" ,MODE_ASK), Slip, 0 , 0 , "" , Magic, 0 , Blue) 
Hata yoksa, öyle olsun. Ancak her durumda, anlam açık olmalıdır.
 
MQL6 zaten ortaya çıktı, bu kabuğu kim test etti?
 
Seric29 :
MQL6 zaten ortaya çıktı, bu kabuğu kim test etti?

Bugün 1 Nisan mı?

 
Alexey Viktorov :

Bugün 1 Nisan mı?

Ve googling yapmaya başladım

... tek sayfalık bir mql6 sitesi ve mql5.com'da bir foruma bir bağlantı buldu