Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
1. Memorizza i biglietti d'ordine in un array o 2 variabili.
2. Selezionateli uno per uno con OrderSelect (l'array è più conveniente qui).
3. Controlla il tipo per il momento attuale.
4. Se tipo OP_BUY || OP_SELL -> OrderDelete per il secondo biglietto.
Per favore, aiutatemi con un esempio semplice, capisco molte cose, ma l'ordine di selezione è un po' un casino!
Ecco il codice dove l'errore è ????? Non cancella il secondo ciondolo quando un ciondolo attiva ......
se (MA1<MA2)
{
se(n==0)
{
//==================================================================================================================//
tiket=OrderSend(Symbol(),OP_BUY,Lots,NormalizeDouble(Ask,Digits),Slip,slb,tpb,NULL,MagicNumber,0,CLR_NONE);
if(tiket<0) Alert("Error # - ",GetLastError()," On instrument ", Symbol()); //write error//
//================================================================================================================//
t2 = OrderSend(Symbol(), OP_BUYSTOP, Lots*Overlot,OtkrBS, Slip,0,tpb, 0, MagicNumber,expiration);
//================================================================================================================//
t1 = OrderSend(Symbol(), OP_SELLSTOP, Lots*Overlot+1,OtkrSS,Slip,0,slb, 0, MagicNumber,expiration);
//================================================================================================================//
//==================================================================================================================//
}
//==================================================================================================================//
else
//=================================================================================================================//
se (MA1>MA2)
{
tiket=OrderSend(Symbol(),OP_SELL,Lots,NormalizeDouble(Bid,Digits),Slip,sls,tps,NULL,MagicNumber,0,CLR_NONE);
if(tiket<0) Alert("Error # - ",GetLastError()," On instrument ", Symbol()); //write error//
//================================================================================================================//
t2 = OrderSend(Symbol(), OP_BUYSTOP, Lots*Overlot+1,OtkrSS1,Slip,0,sls, 0, MagicNumber,expiration);
//================================================================================================================//
t1 = OrderSend(Symbol(), OP_SELLSTOP, Lots*Overlot, OtkrBS1,Slip,0,tps, 0, MagicNumber,expiration);
//================================================================================================================//
}
//==================================================================================================================//
// se SELLSTOP è scattato, cancella BUYSTOP
if(OrderSelect(t1, SELECT_BY_TICKET))
{
if(OrderType()==OP_SELL)
{
OrderDelete(t2);
}
}
//----
// se BUYSTOP è scattato, cancella SELLSTOP
if(OrderSelect(t2, SELECT_BY_TICKET))
{
if(OrderType()==OP_BUY)
{
OrderDelete(t1);
}
}
Sei confuso sulle condizioni. Credo che tu abbia le parentesi {} nel posto sbagliato:
O qualcosa del genere.
Quello che è sorprendente è che ho un EA simile. Ho controllato tutto con questo, è tutto uguale in linea di principio. Funziona, e questo no...
La differenza è che l'altro EA ha solo una posa per l'entrata in acquisto e due pendenti.
biglietti nelle variabili globali? (al di fuori dell'avvio e di altre funzioni)
In caso contrario, vengono resettate ad ogni tick.
Inserite più Print()-s ad ogni passo dell'Expert Advisor, poi capirete dove si blocca e cosa non fa.
URRÀ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Vincitore !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
biglietti nelle variabili globali? (al di fuori dell'avvio e di altre funzioni)
In caso contrario, vengono resettate ad ogni tick.
Inserite più Print()-s ad ogni passo dell'Expert Advisor, poi capirete dove si blocca e cosa non fa.