Nessuno stava litigando. Se non ti piace la risposta, vai avanti... Cosa c'è da offendersi? Le persone sono tutte diverse. E in un post precedente ho detto questo su tutti i programmatori. Io stesso a volte faccio domande nei topic per i neofiti. Che senso ha creare un intero thread per una domanda a cui si può rispondere con un solo post?
ha scritto un robot... Il tester dà un errore OrderSend 148. Qual è il problema?
//+------------------------------------------------------------------+//| эксперт пустой.mq4 |//| Copyright 2021, MetaQuotes Software Corp. |//| https://www.mql5.com |//+------------------------------------------------------------------+#property copyright"Copyright 2021, MetaQuotes Software Corp."#property link"https://www.mql5.com"#property version"1.00"#property strict//+------------------------------------------------------------------+//| Expert initialization function |//+------------------------------------------------------------------+intOnInit()
{
//---//---return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+//| Expert deinitialization function |//+------------------------------------------------------------------+voidOnDeinit(constint reason)
{
//---
}
//+------------------------------------------------------------------+//| Expert tick function |//+------------------------------------------------------------------+voidOnTick()
{
//---int pu;
//делаем сделку один раз при октрытии бараint i=1;//номер ордераint posup=0,possell=0;
int pos_sum=0;
int posa_close=0;
double posa_close_summ=0.03;//объем закрытой позицииdatetime bar_otkr=Time[0];
if (Time[0]>bar_otkr)
while ( i<OrdersTotal())
{
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
pu=pu+OrderProfit();
if (OrderType()== OP_BUY) posup++;
if (OrderType()== OP_SELL) possell++;
if (posup>0)pos_sum=1;//направление байif (possell>0)pos_sum=0;//направление селл
i++;
}
;
printf(posup,possell);
if (Close[0]>Open[0]&&pu==0) OrderSend(Symbol(),OP_BUY,0.03,Bid,2,Ask+15,0,0,0,0,0);//свеча бай при начале работыif (Close[0]<Open[0]&&pu==0) OrderSend(Symbol(),OP_SELL,0.03,Bid,2,Ask+15,0,0,0,0,0);//свеча селл при начале работыif(Close[0]>Open[0]&&pu>0&&pos_sum==1) OrderSend(Symbol(),OP_BUY,0.03,Bid,2,Ask+15,0,0,0,0,0);//свеча бай при прибыли при покупках - покупаем 0.03if (Close[0]<Open[0]&&pu>0&&pos_sum==1)//свеча селл при прибыли при покупках- кроем 0.01while (i<OrdersTotal())
{
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if (OrderLots()>=0.01&&posa_close==0) OrderClose(i,0.01,Bid,3);posa_close=1 ;
if (posa_close==1)break ; else posa_close=0;
i++;
}
;
if (Close[0]<Open[0]&&pu<0&&pos_sum==1)//свеча селл при убытках при покупках- кроем 0.03while (i<OrdersTotal())
{
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if (OrderLots()==0.03&&posa_close==0) OrderClose(i,0.03,Bid,3);posa_close=1 ;
if (posa_close==1)break ; else posa_close=0;
if (posa_close==0&&OrderLots()==0.02)OrderClose(i,OrderLots(),Bid,3);posa_close_summ=posa_close_summ-0.02;if (posa_close_summ==0)posa_close=1;
if (posa_close==0&&OrderLots()==0.01)OrderClose(i,OrderLots(),Bid,3);posa_close_summ=posa_close_summ-0.01;if (posa_close_summ==0)posa_close=1;
i++;
}
;
if(Close[0]<Open[0]&&pu>0&&pos_sum==0)OrderSend(Symbol(),OP_SELL,0.03,Bid,2,Ask+15,0,0,0,0,0);// свеча селл при продаже и прибыли - покупаем 0.03if (Close[0]>Open[0]&&pu>0&&pos_sum==0)//свеча бай при продаже и прибыли- кроем 0.01while (i<OrdersTotal())
{
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if (OrderLots()>=0.01&&posa_close==0) OrderClose(i,0.01,Bid,3);posa_close=1 ;
if (posa_close==1)break ; else posa_close=0;
i++;
}
;
// свеча селл при продаже и убытке - ничего не делаемif (Close[0]>Open[0]&&pu<0&&pos_sum==0)// свеча бай при продаже и убытке - кроем 0.03while (i<OrdersTotal())
{
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if (OrderLots()==0.03&&posa_close==0) OrderClose(i,0.03,Bid,3);posa_close=1 ;
if (posa_close==1)break ; else posa_close=0;
if (posa_close==0&&OrderLots()==0.02)OrderClose(i,OrderLots(),Bid,3);posa_close_summ=posa_close_summ-0.02;if (posa_close_summ==0)posa_close=1;
if (posa_close==0&&OrderLots()==0.01)OrderClose(i,OrderLots(),Bid,3);posa_close_summ=posa_close_summ-0.01;if (posa_close_summ==0)posa_close=1;
i++;
}
;
}
//+------------------------------------------------------------------+
Non voglio aprire le compravendite correttamente... quale potrebbe essere il problema... Nessun errore durante la compilazione
//+------------------------------------------------------------------+//| эксперт пустой.mq4 |//| Copyright 2021, MetaQuotes Software Corp. |//| https://www.mql5.com |//+------------------------------------------------------------------+#property copyright"Copyright 2021, MetaQuotes Software Corp."#property link"https://www.mql5.com"#property version"1.00"#property strict//+------------------------------------------------------------------+//| Expert initialization function |//+------------------------------------------------------------------+intOnInit()
{
//---//---return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+//| Expert deinitialization function |//+------------------------------------------------------------------+voidOnDeinit(constint reason)
{
//---
}
//+------------------------------------------------------------------+//| Expert tick function |//+------------------------------------------------------------------+voidOnTick()
{
//---int pu;
//делаем сделку один раз при октрытии бараint i=1;//номер ордераint posup=0,possell=0;
int pos_sum=0;
int posa_close=0;
double posa_close_summ=0.03;//объем закрытой позицииstaticdatetime New_Time=0;
bool New_Bar=false;
if(New_Time!=Time[0])
{
New_Time=Time[0];
New_Bar=true;
}
if (New_Bar)
{
Print(New_Bar);
while ( i<OrdersTotal())
{
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
pu=pu+OrderProfit();
if (OrderType()== OP_BUY) posup++;
if (OrderType()== OP_SELL) possell++;
if (posup>0)pos_sum=1;//направление байif (possell>0)pos_sum=0;//направление селл
i++;
}
;
if (Close[0]>Open[0]&&pu==0) OrderSend(Symbol(),OP_BUY,0.03,Bid,2,Ask+15,0,0,0,0,0);//свеча бай при начале работыif (Close[0]<Open[0]&&pu==0) OrderSend(Symbol(),OP_SELL,0.03,Bid,2,Ask+15,0,0,0,0,0);//свеча селл при начале работыif(Close[0]>Open[0]&&pu>0&&pos_sum==1) OrderSend(Symbol(),OP_BUY,0.03,Bid,2,Ask+15,0,0,0,0,0);//свеча бай при прибыли при покупках - покупаем 0.03if (Close[0]<Open[0]&&pu>0&&pos_sum==1)//свеча селл при прибыли при покупках- кроем 0.01while (i<OrdersTotal())
{
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if (OrderLots()>=0.01&&posa_close==0) OrderClose(i,0.01,Bid,3);posa_close=1 ;
if (posa_close==1)break ; else posa_close=0;
i++;
}
;
if (Close[0]<Open[0]&&pu<0&&pos_sum==1)//свеча селл при убытках при покупках- кроем 0.03while (i<OrdersTotal())
{
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if (OrderLots()==0.03&&posa_close==0) OrderClose(i,0.03,Bid,3);posa_close=1 ;
if (posa_close==1)break ; else posa_close=0;
if (posa_close==0&&OrderLots()==0.02)OrderClose(i,OrderLots(),Bid,3);posa_close_summ=posa_close_summ-0.02;if (posa_close_summ==0)posa_close=1;
if (posa_close==0&&OrderLots()==0.01)OrderClose(i,OrderLots(),Bid,3);posa_close_summ=posa_close_summ-0.01;if (posa_close_summ==0)posa_close=1;
i++;
}
;
if(Close[0]<Open[0]&&pu>0&&pos_sum==0)OrderSend(Symbol(),OP_SELL,0.03,Bid,2,Ask+15,0,0,0,0,0);// свеча селл при продаже и прибыли - покупаем 0.03if (Close[0]>Open[0]&&pu>0&&pos_sum==0)//свеча бай при продаже и прибыли- кроем 0.01while (i<OrdersTotal())
{
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if (OrderLots()>=0.01&&posa_close==0) OrderClose(i,0.01,Bid,3);posa_close=1 ;
if (posa_close==1)break ; else posa_close=0;
i++;
}
;
// свеча селл при продаже и убытке - ничего не делаемif (Close[0]>Open[0]&&pu<0&&pos_sum==0)// свеча бай при продаже и убытке - кроем 0.03while (i<OrdersTotal())
{
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if (OrderLots()==0.03&&posa_close==0) OrderClose(i,0.03,Bid,3);posa_close=1 ;
if (posa_close==1)break ; else posa_close=0;
if (posa_close==0&&OrderLots()==0.02)OrderClose(i,OrderLots(),Bid,3);posa_close_summ=posa_close_summ-0.02;if (posa_close_summ==0)posa_close=1;
if (posa_close==0&&OrderLots()==0.01)OrderClose(i,OrderLots(),Bid,3);posa_close_summ=posa_close_summ-0.01;if (posa_close_summ==0)posa_close=1;
i++;
}
;
}
}
//+------------------------------------------------------------------+
Consenti l'uso dei cookie per accedere al sito MQL5.com.
Abilita le impostazioni necessarie nel browser, altrimenti non sarà possibile accedere.
Hai effettuato l'accesso. L'autenticazione a due fattori è stata disattivata. Configurala di nuovo e scansiona un nuovo codice QR, oppure continua con l'autenticazione a due fattori disattivata.
Beh, ecco qua, bellissimo.
Nessuno stava litigando. Se non ti piace la risposta, vai avanti... Cosa c'è da offendersi? Le persone sono tutte diverse. E in un post precedente ho detto questo su tutti i programmatori. Io stesso a volte faccio domande nei topic per i neofiti. Che senso ha creare un intero thread per una domanda a cui si può rispondere con un solo post?
ha scritto un robot... Il tester dà un errore OrderSend 148. Qual è il problema?
Persone ... aiuto! c'è un nuovo bar...
come posso aprire un ordine solo quando si apre una nuova barra?
come posso aprire un ordine solo quando si apre una nuova barra?
Non voglio aprire le compravendite correttamente... quale potrebbe essere il problema... Nessun errore durante la compilazione
Ciao a tutti, ho bisogno di un pezzo di codice per chiudere tutti gli acquisti di un certo simbolo.
ha scritto un robot... Il tester dà un errore OrderSend 148. Qual è il problema?
Non ci sono funzioni interne in MQL, solo esterne.
Sapete come risolvere il problema o avete bisogno di un aiuto qualificato? )))
Non ci sono funzioni interne in MQL, solo funzioni esterne.
Sai come risolvere il problema o hai bisogno dell'aiuto di un esperto? )))
l'errore 148 è già stato risolto
Dice che il take profit è sbagliato - cosa c'è di sbagliato?
Ho messo zero al posto di Bid-tp - funziona!
Come si inizializza il tp?