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

 
Reshetov :

Hiç bir şey. Yalnızca OrderSelect() kullanılarak parça tarafından yinelenen bir döngüde.

Lütfen bana tüm siparişlerin (lotların) toplam hacmini OrderSelect( ) kullanarak her bir sipariş arasında döngü yaparak nasıl hesaplayacağımı söyleyin.)
 
Elektronik :
Lütfen bana tüm siparişlerin (lotların) toplam hacmini OrderSelect( ) kullanarak her bir sipariş arasında döngü yaparak nasıl hesaplayacağımı söyleyin.)
Toplam hacmi lotlar halinde içerecek bir değişken oluşturun ve onu 0'a sıfırlayın
  1. Siparişler arasında döngü
  2. Her OrderSelect()'ten sonra, değişkenin değerini OrderLots () değeri kadar artırın.

Döngü tamamlandıktan sonra değişken, numaralandırılmış tüm siparişlerin hacimlerinin toplamını içerecektir.

 
Elektronik :
Lütfen bana tüm siparişlerin (lotların) toplam hacmini OrderSelect( ) kullanarak her bir sipariş arasında döngü yaparak nasıl hesaplayacağımı söyleyin.)
 //+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 19.02.2008                                                     |
//|  Описание : Возвращает сумму лотов открытых позиций                        |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   ( ""  - любой символ,                   |
//|                                     NULL - текущий символ)                 |
//|    op - торговая операция          ( -1  - любая позиция)                  |
//|    mn - MagicNumber                ( -1  - любой магик)                    |
//+----------------------------------------------------------------------------+
double GetAmountLotFromOpenPos( string sy= "" , int op=- 1 , int mn=- 1 ) {
   double l= 0 ;
   int     i, k= OrdersTotal ();

   if (sy== "0" ) sy= Symbol ();
   for (i= 0 ; i<k; i++) {
     if ( OrderSelect (i, SELECT_BY_POS, MODE_TRADES)) {
       if ( OrderSymbol ()==sy || sy== "" ) {
         if ( OrderType ()==OP_BUY || OrderType ()==OP_SELL) {
           if (op< 0 || OrderType ()==op) {
             if (mn< 0 || OrderMagicNumber ()==mn) {
              l+= OrderLots ();
            }
          }
        }
      }
    }
  }
   return (l);
}
 


teşekkürler pako :

öyle yaptı :)

int start()
{
int i=0;
double lots=0;
int kollots=0;
int nets=0;
int netp=0;
for(i=0; i<OrdersTotal(); i++)
{
if(!OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) continue;kollots=kollots+1;if(OrderStopLoss()<=0) nets=nets+1; if(OrderTakeProfit()<=0) netp=netp+1;
if((OrderType()==OP_BUY)){lots=lots+OrderLots();}
if((OrderType()==OP_SELL)){lots=lots-OrderLots();}
}
Comment("Общий объем: "+ DoubleToStr(lots,2));
}

SAĞ?

 
Elektronik :



bu şekilde yap

 //+------------------------------------------------------------------+
//|                                                     lots_kol.mq4 |
//|                      Copyright © 2011, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2011, MetaQuotes Software Corp."
#property link       "http://www.metaquotes.net"

//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----
   
//----
   return ( 0 );
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return ( 0 );
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//----
  GetAmountLotFromOpenPos(); 
//----
   return ( 0 );
  }
//+------------------------------------------------------------------+
double GetAmountLotFromOpenPos( string sy= "" , int op=- 1 , int mn=- 1 ) {
   double l= 0 ;
   int     i, k= OrdersTotal ();

   if (sy== "0" ) sy= Symbol ();
   for (i= 0 ; i<k; i++) {
     if ( OrderSelect (i, SELECT_BY_POS, MODE_TRADES)) {
       if ( OrderSymbol ()==sy || sy== "" ) {
         if ( OrderType ()==OP_BUY || OrderType ()==OP_SELL) {
           if (op< 0 || OrderType ()==op) {
             if (mn< 0 || OrderMagicNumber ()==mn) {
              l+= OrderLots ();
            }
          }
        }
      }
    }
  }
   Comment ( "Количество лотoв                " ,l);
   return (l);
}

так сделай

 

Tünaydın bayanlar ve baylar.

Acemiyim ve bir sorum var: robotu doğru şekilde nasıl optimize edebilirim?..

Strateji test cihazını çalıştırmak için hangi düğmeleri ve onay kutularını kurcalayacağımı biliyorum.

Merak ediyorum: optimizasyon için hangi sürenin geçmesi gerektiğini nasıl anlayabilirim? danışmanın ne kadar "iyi" çalışacağını nasıl anlayabilirim?

Bu nasıl hesaplanabilir? Sadece aydınlatma yöntemi işe yaramaz...

 
impus :

Tünaydın bayanlar ve baylar.

Acemiyim ve bir sorum var: robotu doğru şekilde nasıl optimize edebilirim?..

Strateji test cihazını çalıştırmak için hangi düğmeleri ve onay kutularını açmam gerektiğini biliyorum.

Merak ediyorum: optimizasyon için hangi sürenin geçmesi gerektiğini nasıl anlayabilirim? danışmanın ne kadar "iyi" çalışacağını nasıl anlayabilirim?

Bu nasıl hesaplanabilir? Sadece aydınlatma yöntemi işe yaramaz...

"İleri testler" veya "OOS" için yerel bir arama yapın. Birçok kez tartışıldı.
 
impus :

Tünaydın bayanlar ve baylar.

Acemiyim ve bir sorum var: robotu doğru şekilde nasıl optimize edebilirim?..

Strateji test cihazını çalıştırmak için hangi düğmeleri ve onay kutularını açmam gerektiğini biliyorum.

Merak ediyorum: optimizasyon için hangi sürenin geçmesi gerektiğini nasıl anlayabilirim? danışmanın ne kadar "iyi" çalışacağını nasıl anlayabilirim?

Bu nasıl hesaplanabilir? Sadece aydınlatma yöntemi işe yaramaz...

Bir Expert Advisor'ı nasıl optimize edeceğinizi bilmiyorsanız, optimizasyon yapmanız gerekmez, TS'nizle ilgilenin ve hangi parametrelerin optimize edilmesi gerektiğini öğrenin.
 
Reshetov :
"İleri testler" veya "OOS" için yerel bir arama yapın. Birçok kez tartışıldı.
teşekkür etmek. okuman
 
impus :

Tünaydın bayanlar ve baylar.

Acemiyim ve bir sorum var: robotu doğru şekilde nasıl optimize edebilirim?..

Strateji test cihazını çalıştırmak için hangi düğmeleri ve onay kutularını açmam gerektiğini biliyorum.

Merak ediyorum: optimizasyon için hangi sürenin geçmesi gerektiğini nasıl anlayabilirim? danışmanın ne kadar "iyi" çalışacağını nasıl anlayabilirim?

Bu nasıl hesaplanabilir? Sadece aydınlatma yöntemi işe yaramaz...

Bağlantılara (sayfadaki yedinci) buradan bakın, özellikle: " Robert Pardo "Bir hisse senedi tüccarı için ticaret sistemlerinin geliştirilmesi, test edilmesi ve optimizasyonu".