[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 4. - pagina 571

 
Frostr:
file://localhost/C:/Utenti/mv/Desktop/StrategyTester.htm
Bel link. Solo un looker :)
 
rigonich:

Non capisco che tipo di dati? Ho appena messo il codice dell'EA. compilare ed eseguire, solo dargli un nome. Non l'ho testato, l'ho solo ricompilato come è venuto fuori e l'ho messo fuori. Se non funziona correttamente, fatemelo sapere e cercherò di capire perché.



Urrà, ce l'ho fatta...ho cercato sul web per compile ))) risulta Compile .

Ho già iniziato a testarlo, apre 500-1000 posizioni alla volta

Ecco un link al file di test://localhost/C:/Users/mv/Desktop/StrategyTester.htm - apre troppe posizioni

 
Frostr:



Urrà l'ho ottenuto ... cercato sul web per ciò che significa Compile))) si scopre Compile .

Ho già iniziato a testarlo con Compile, apre 500-1000 posizioni alla volta


Beh, vediamo.
 

Potete dirmi quanti personaggi sono attualmente intoccabili nei commenti dell'ordine?

Z.I. Se è importante, è su Alpari.

 
Frostr:



Urrà, l'ho capito... ho cercato sul web "Compile")) risulta Compile .

Ho già iniziato a testarlo, apre 500-1000 posizioni alla volta

Ecco un link al test: file://localhost/C:/Users/mv/Desktop/StrategyTester.htm apre molte posizioni


Ecco il codice, funziona come avete chiesto. Ad ogni chiusura apre due posizioni opposte.
//+------------------------------------------------------------------+
//|                                                  Trudnyaga_1.mq4 |
//+------------------------------------------------------------------+
#property copyright ""
#property link      ""
//+------------------------------------------------------------------+
extern int    stoploss   = 0,          // уровень выставления SL, если 0, то SL не выставляется
              takeprofit = 0,          // уровень выставления TP, если 0, то TP не выставляется
              Magic      = 123456;     // уникальный номер ордера
extern double Lot        = 0.1;        // объем ордера
extern int    slippage   = 3;          // Максимально допустимое отклонение цены для рыночных ордеров
extern int    MaxOrders  = 3;          // Максимально допустимое количество ордеров BUY или SELL
extern int    CycleCount = 5;          // количество попыток открытия ордера
//+------------------------------------------------------------------+
double SL,TP;
int    Total,LastTotal;
string ord;
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
   {
   return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
   {
   return(0);
}
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
   {
   Total=fTotal();
   if((Total==LastTotal&&LastTotal!=0)||Total>=MaxOrders)return(0);
   if(takeprofit!=0)TP=NormalizeDouble(Ask+takeprofit*Point,Digits);else TP=0;
   if(stoploss!=0)SL=NormalizeDouble(Ask-stoploss*Point,Digits);else SL=0;
   OPENORDER("Buy");
   if(takeprofit!=0)TP=NormalizeDouble(Bid-takeprofit*Point,Digits);else TP=0;
   if(stoploss!=0)SL=NormalizeDouble(Bid+stoploss*Point,Digits);else SL=0;
   OPENORDER("Sell");
   LastTotal=fTotal();
   return(0);
}
//+------------------------------------------------------------------+
void OPENORDER(string ord)
   {
   int error,err;
   while(true)
      { 
      error=-1;
      if(ord=="Buy" )error=OrderSend(Symbol(),OP_BUY, Lot,NormalizeDouble(Ask,Digits),slippage,SL,TP,"BUY",Magic,0,Blue);
      if(ord=="Sell")error=OrderSend(Symbol(),OP_SELL,Lot,NormalizeDouble(Bid,Digits),slippage,SL,TP,"SELL",Magic,0,Red);
      if(error==-1) //неудачная покупка OK
         { 
         ShowERROR();err++;Sleep(2000);RefreshRates();
      }
      if (err>=CycleCount)break;
   }
   return;
} 
//+------------------------------------------------------------------+
void ShowERROR()
   {
   int err=GetLastError();
   switch(err)
      { 
      case 1   : return;
      case 2   : Alert("Нет связи с торговым сервером ",Symbol());return;
      case 3   : Alert("Error неправильные параметры ",Symbol());return;
      case 130 : Alert("Error близкие стопы Ticket ",Symbol());return;
      case 134 : Alert("Недостаточно денег ",Symbol());return;
      case 146 : Alert("Error Подсистема торговли занята ",Symbol());return;
      case 129 : Alert("Error Неправильная цена ",Symbol());return;
      case 131 : Alert("Error Неправильный объем ",Symbol());return;
      case 4200: Alert("Error Объект уже существует ",Symbol());return;
      default  : Alert("Error " ,err," ",Symbol());return;
   }
}
//+------------------------------------------------------------------+
int fTotal()
   {
   int Tot=OrdersTotal();
   int BuyCount=0,SellCount=0;
   if(Tot>0)
      {
      for(int i=0;i<OrdersTotal();i++)
         {
         if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==true)
            {
            if(OrderSymbol()==Symbol()&&(Magic==0||OrderMagicNumber()==Magic))
               {
               switch (OrderType())
                  {
                  case OP_BUY :BuyCount++; break;
                  case OP_SELL:SellCount++;break;
               }
            }
         }
      }
   }
   return(BuyCount+SellCount);
}
//+------------------------------------------------------------------+
 
quale ufficio postale può inviare messaggi sulla posta in arrivo e sul suo contenuto?
 
gheka:
quale ufficio postale può inviare messaggi sulla posta in arrivo e sul suo contenuto?
Ti conviene comprare uno smartphone, ora costano meno. Basta non connettersi a MTS, quei bastardi hanno rubato i miei ultimi due kopeki :))
 
Senza offesa, io sto con MTS. 7 anni con MTS e nessun problema
 
gheka:
Senza offesa, io sto con MTS. 7 anni con MTS e nessun problema

Finché avevo solo un telefono, non ho avuto problemi per cinque anni. Appena ho collegato il loro Internet, i problemi (con il pagamento) sono apparsi subito. Naturalmente li risolvono, e si scusano anche, ma è troppo da scrivere e dimostrare. Soprattutto, dopo un mese di nuovo lo stesso problema e tutto si ripete. Così ora uso il megafono.
 
rigonich:

Ecco il codice, funziona come avete chiesto. Ad ogni chiusura apre due posizioni opposte.



Grazie.

Ma tu hai un EA diverso, funziona in modo diverso.

Vorrei che il mio EA aprisse le posizioni in entrambe le direzioni se alcune di esse sono chiuse,

Non so come si fa, ma ho visto che apre alcune posizioni.

File:
sellbuy_1.ex4  5 kb