Ho cancellato il tuo altro topic perché era lo stesso argomento di questo. Ho copiato il commento di WHRoeder e l'ho incollato qui prima di cancellarlo
Keith Watford: Ho cancellato il tuo altro topic perché era lo stesso argomento di questo. Ho copiato il commento di WHRoeder e l'ho incollato qui prima di cancellarlo
Ok, va bene, quindi per il ciclo, dovrebbe essere inquadrato simile a quello che ho per il closeorder, e se è così dovrei far contare al programma gli ordini verso l'alto o verso il basso?
Matt_Townsend: Ok questo va bene, quindi per il ciclo, dovrebbe essere inquadrato simile a quello che ho per il closeorder, e se è così dovrei avere il programma che conta su o giù gli ordini?
Quindi ora ho una funzione di loop sia sulla mia funzione di chiusura dell'ordine che sulla funzione di chiusura dell'ordine, ma ancora non fa trading in modo indipendente. Anche se sta ancora aprendo trade e chiudendo sui parametri impostati, come posso vedere nel tester della strategia, anche se non funziona su più grafici in una demo live.
Matt_Townsend: Quindi ora ho una funzione di loop sia sulla mia funzione di chiusura dell'ordine che sulla funzione ordersend, ma ancora non fa trading in modo indipendente. Anche se sta ancora aprendo trade e chiudendo sui parametri impostati, come posso vedere nel tester della strategia, anche se non funziona su più grafici in una demo live.
È necessario RefreshRates dopo lo sleep e tra più chiamate al server se si desidera utilizzare le variabili predefinite(Bid/Ask) oOrderClosePrice() invece.
Ho cancellato il tuo altro topic perché era lo stesso argomento di questo. Ho copiato il commento di WHRoeder e l'ho incollato qui prima di cancellarlo
int buy_count=0;
int sell_count=0;
for(int i=OrdersTotal()-1;i>=0;i--)
{
if(OrderSelect(i,SELECT_BY_POS) && OrderMagicNumber()==MagicNumber && OrderSymbol()==Symbol())
{
if(OrderType()==OP_BUY)
{
buy_count++;
}
if(OrderType()==OP_SELL)
{
sell_count++;
}
}
}
Qualcosa del genere
Faccio sempre il conto alla rovescia, a meno che non abbia una ragione specifica per non farlo.
Ok questo va bene, quindi per il ciclo, dovrebbe essere inquadrato simile a quello che ho per il closeorder, e se è così dovrei avere il programma che conta su o giù gli ordini?
Quindi ora ho una funzione di loop sia sulla mia funzione di chiusura dell'ordine che sulla funzione ordersend, ma ancora non fa trading in modo indipendente. Anche se sta ancora aprendo trade e chiudendo sui parametri impostati, come posso vedere nel tester della strategia, anche se non funziona su più grafici in una demo live.
Ogni EA ha un numero magico diverso?
Mostra i tuoi cicli che stai usando ora.
Ogni EA ha un numero magico diverso?
Mostra i tuoi loop che stai usando ora.
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==true) break;
if(OrderMagicNumber()==MagicNumber || OrderSymbol()==Symbol()) continue;
//--- Check for buy order
if(fastma > slowma)
{
if(OrderSend(Symbol(),OP_BUY,Lots,Ask,10,0,0,"",MagicNumber,0,Blue))
Print("Buy order opened :", OrderOpenPrice());
else
Print("Order failed to open : ", GetLastError());
return(0);
}
//--- Check for sell order
if(fastma < slowma)
{
if(OrderSend(Symbol(),OP_SELL,Lots,Bid,10,0,0,"",MagicNumber,0,Red))
Print("Order opened : ", OrderOpenPrice());
else
Print("Order failed to open : ", GetLastError());
return(0);
}
break;
}
Ecco il ciclo ordersend
Così come ho il MN come un int esterno, così posso cambiarlo su ogni grafico su cui metto l'EA.if(OrderMagicNumber()==MagicNumber || OrderSymbol()==Symbol()) continue;
In presenza di ordini multipli (un EA più grafici, più EA, trading manuale)