Yeni başlayanlardan sorular MQL5 MT5 MetaTrader 5 - sayfa 560

 
Her tikte siparişlerin açılmaması için kodda ne yazması gerektiğini söyle?
 
int OnInit ()
  {
   double LotSize( string symbol, datetime tbar)
     {
       double size;
       string BQ,currency= AccountCurrency ();
       switch ( MarketInfo (symbol, MODE_PROFITCALCMODE ))
        {
         case 0 :
           {
             int sbar= iBarShift (symbol, 0 ,tbar);
            size= MarketInfo (symbol, MODE_LOTSIZE );
             if ( StringSubstr (symbol, 3 , 3 )== "USD" ) break ;
             if ( StringSubstr (symbol, 0 , 3 )== "USD" ) size=size/ iClose (symbol, 0 ,sbar);
             else
              {
               BQ= StringSubstr (symbol, 0 , 3 )+ "USD" ;
               if ( iClose (BQ, 0 , 0 )== 0 ) BQ= "USD" + StringSubstr (symbol, 0 , 3 );
               if ( iClose (BQ, 0 , 0 )== 0 ) break ;
               int BQbar= iBarShift (BQ, 0 ,tbar);
               if ( StringSubstr (BQ, 0 , 3 )== "USD" ) size=size/ iClose (BQ, 0 ,BQbar)/ iClose (symbol, 0 ,sbar);
               else size=size* iClose (BQ, 0 ,BQbar)/ iClose (symbol, 0 ,sbar);
              }
           }
         break ;
         case 1 : size= MarketInfo (symbol, MODE_LOTSIZE ); break ;
         case 2 : size= MarketInfo (symbol, MODE_TICKVALUE )/ MarketInfo (symbol, MODE_TICKSIZE );
        }
       if (currency!= "USD" )
        {
         BQ=currency+ "USD" ;
         if ( iClose (BQ, 0 , 0 )== 0 )
           {
            BQ= "USD" +currency;
            size*= iClose (BQ, 0 , iBarShift (BQ, 0 ,tbar));
           }
         else size/= iClose (BQ, 0 , iBarShift (BQ, 0 ,tbar));
        }
       return (size);
     }
Derlerken iki hata var: Neyin yanlış olduğu ve nasıl düzeltileceği hakkında hiçbir fikrim yok. Lütfen söyle.
 
Alexandr Saprykin :
Derlerken iki hata var: Neyin yanlış olduğunu ve nasıl düzeltileceğini bulamıyorum. Lütfen söyle.
Telepatlar tatilde ve başlık kodunuzda bir başlık veya uzantı yok. Git ve ne olduğunu ve hangi dilde yazıldığını öğren :)
 
Karputov Vladimir :
Telepatlar tatilde ve başlık kodunda ne başlık ne de uzantı var. Git ve ne olduğunu ve hangi dilde yazıldığını öğren :)

Telepat olmayanlar için)))

 //+------------------------------------------------------------------+
//|                                                   Break Even.mq4 |
//|                                                 Copyright 2016,  |
//|                                         /ru |
//+------------------------------------------------------------------+
#property copyright "Copyright 2016, "
#property link        "/ru"
#property version    "1.00"
#property strict
#property indicator_chart_window    //отображение внутри основного окна
#property indicator_buffers 1
#property indicator_plots    1
//--- plot BreakEven
#property indicator_label1   "BreakEven"      //название индикатора
#property indicator_type1   DRAW_LINE        //рисовать линией
#property indicator_color1   clrGold        // цвет индикатора
#property indicator_style1   STYLE_SOLID    //стиль индикатора
#property indicator_width1   1
//--- indicator buffers
double          BreakEvenBuffer[];
//+------------------------------------------------------------------+
//| Рассчитываем точку безубыточности                                |
//+------------------------------------------------------------------+
int OnInit ()
  {
   double LotSize( string symbol, datetime tbar)
     {
       double size;
       string BQ,currency= AccountCurrency ();
       switch ( MarketInfo (symbol, MODE_PROFITCALCMODE ))
        {
         case 0 :
           {
             int sbar= iBarShift (symbol, 0 ,tbar);
            size= MarketInfo (symbol, MODE_LOTSIZE );
             if ( StringSubstr (symbol, 3 , 3 )== "USD" ) break ;
             if ( StringSubstr (symbol, 0 , 3 )== "USD" ) size=size/ iClose (symbol, 0 ,sbar);
             else
              {
               BQ= StringSubstr (symbol, 0 , 3 )+ "USD" ;
               if ( iClose (BQ, 0 , 0 )== 0 ) BQ= "USD" + StringSubstr (symbol, 0 , 3 );
               if ( iClose (BQ, 0 , 0 )== 0 ) break ;
               int BQbar= iBarShift (BQ, 0 ,tbar);
               if ( StringSubstr (BQ, 0 , 3 )== "USD" ) size=size/ iClose (BQ, 0 ,BQbar)/ iClose (symbol, 0 ,sbar);
               else size=size* iClose (BQ, 0 ,BQbar)/ iClose (symbol, 0 ,sbar);
              }
           }
         break ;
         case 1 : size= MarketInfo (symbol, MODE_LOTSIZE ); break ;
         case 2 : size= MarketInfo (symbol, MODE_TICKVALUE )/ MarketInfo (symbol, MODE_TICKSIZE );
        }
       if (currency!= "USD" )
        {
         BQ=currency+ "USD" ;
         if ( iClose (BQ, 0 , 0 )== 0 )
           {
            BQ= "USD" +currency;
            size*= iClose (BQ, 0 , iBarShift (BQ, 0 ,tbar));
           }
         else size/= iClose (BQ, 0 , iBarShift (BQ, 0 ,tbar));
        }
       return (size);
     }
//--- indicator buffers mapping
   SetIndexBuffer ( 0 ,BreakEvenBuffer);

//---
   return ( INIT_SUCCEEDED );
  }
 
Alexandr Saprykin :

Telepat olmayanlar için)))

LotSize işlevini OnInit() DIŞINA taşıyın.
 
edutak :

Mantıktaki hatayı söyle neden zıt emirler açılmıyor?

Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum

Yeni Başlayanlardan Sorular

Karputov Vladimir , 2016.04.16 13:04

Telepatlar tatilde ve başlık kodunda ne başlık ne de uzantı var. Git ve ne olduğunu ve hangi dilde yazıldığını öğren :)

 
Karputov Vladimir :

Algoritmayı tanımlamanız mı gerekiyor?
 
edutak :
Algoritmayı tanımlamanız mı gerekiyor?

Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum

Yeni Başlayanlardan Sorular

Karputov Vladimir , 2016.04.16 13:04

Telepatlar tatilde ve başlık kodunda ne başlık ne de uzantı var. Git ve ne olduğunu ve hangi dilde yazıldığını öğren :)

 
savinkins :
Varsayılan olarak sahip olduğum terminalden giriş şifresi. Sunucu adı seçim listesinde yok, kopyalıyorum. Şimdi, bakiye gösterse de, ağ listesinde tek bir temsilcim yok.
 
savinkins :

Terminali güncellemek için MetaQuotes-Demo ticaret sunucusuna bağlanmanız gerekir.