Snajper007 ordine di vendita è aperto, la funzione calcola il prezzo medio. Tuttavia, quando si apre il 3° ordine, questa funzione visualizza il valore precedente e quello nuovo (ho guardato la stampa nel giornale) ma come risultato, il valore precedente rimane. Cosa ho fatto di male?
Aiutami a perfezionare la logica. Ho bisogno di una pausa in ore tra gli ordini chiusi e l'apertura di uno nuovo. Ho risolto alcune cose. Ma non funziona.
OrderCloseTime() > 0 && TimeCurrent() - OrderCloseTime() > FstOrderTimeHour*3600// сигнал на открытие ордера
OrderCloseTime() == 0// сигнал на открытие первого ордера
где int FstOrderTimeHour = 1// пауза в часах
Aiutami a perfezionare la logica. Ho bisogno di una pausa in ore tra gli ordini chiusi e l'apertura di uno nuovo. Ho risolto alcune cose. Ma non funziona.
//--- input parametersinputint HourPause = 1; // Пауза в часах//--- global parametersdatetime pause;
//+------------------------------------------------------------------+
void OnTick()
{
pause=GetInfoLastPos(3)+(HourPause*60*60);
// выключаем торговлюif(TimeCurrent()<pause) return;
.......
}
//+----------------------------------------------------------------------------+//| Функция возвращает по символу и магику MakarFX|//| 1 - размер лота последней закрытой позиции |//| 2 - размер профита с учетом комиссии и свопа последней закрытой позиции |//| 3 - время последней закрытой позиции |//+----------------------------------------------------------------------------+double GetInfoLastPos(int a=1)
{
datetime t=0;
double result=0,l=0,p=0,f=0;
int i=OrdersHistoryTotal();
for(int pos=0; pos<i; pos++)
{
if(OrderSelect(pos, SELECT_BY_POS, MODE_HISTORY))
{
if(OrderSymbol()==_Symbol && OrderMagicNumber()==Magic)
{
if(OrderType()==OP_BUY || OrderType()==OP_SELL)
{
if(t<OrderCloseTime()) {t=OrderCloseTime(); l=OrderLots(); p=OrderProfit()+OrderCommission()+OrderSwap();}
}
}
}
}
if(a==1) {result=l;} elseif(a==2) {result=p;} elseif(a==3) {result=(double)t;}
else {result=0;}
return(result);
}
//+----------------------------------------------------------------------------+
Prima di aprire un ordine, si memorizza il max_ticket corrente nel prev_ticket
Buon tempo Makar, questo metodo di definizione del biglietto di penultimo ordine ha un grave svantaggio. Questo metodo funziona quando l'ordine massimo nella griglia sarà aperto e se ciò non accade, il penultimo ordine è l'ultimo nella griglia (vedi l'immagine). Sto cercando di scrivere una funzione ma non funziona, l'ultimo biglietto viene rilevato. La condizione evidenziata non vuole funzionare.
Buon tempo Makar, questo metodo per il penultimo biglietto d'ordine ha un grave svantaggio. Questo metodo funziona quando l'ordine massimo è aperto nella griglia. Se non lo è, il penultimo ordine è uguale all'ultimo, vedi l'immagine. Sto cercando di scrivere una funzione ma non funziona, l'ultimo biglietto viene rilevato. La condizione evidenziata non vuole funzionare.
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.
Buon pomeriggio, chi può aiutarmi a implementare un filtro di apertura degli scambi basato su indicatori?
Aiutami a perfezionare la logica. Ho bisogno di una pausa in ore tra gli ordini chiusi e l'apertura di uno nuovo. Ho risolto alcune cose. Ma non funziona.
Aiutami a perfezionare la logica. Ho bisogno di una pausa in ore tra gli ordini chiusi e l'apertura di uno nuovo. Ho risolto alcune cose. Ma non funziona.
Se il mago non è necessario - cancella il giallo.
Prima di aprire un ordine, si memorizza il max_ticket corrente nel prev_ticket
Buon tempo Makar, questo metodo di definizione del biglietto di penultimo ordine ha un grave svantaggio. Questo metodo funziona quando l'ordine massimo nella griglia sarà aperto e se ciò non accade, il penultimo ordine è l'ultimo nella griglia (vedi l'immagine). Sto cercando di scrivere una funzione ma non funziona, l'ultimo biglietto viene rilevato. La condizione evidenziata non vuole funzionare.
Buon tempo Makar, questo metodo per il penultimo biglietto d'ordine ha un grave svantaggio. Questo metodo funziona quando l'ordine massimo è aperto nella griglia. Se non lo è, il penultimo ordine è uguale all'ultimo, vedi l'immagine. Sto cercando di scrivere una funzione ma non funziona, l'ultimo biglietto viene rilevato. La condizione evidenziata non vuole funzionare.
Ti ho dato un codice funzionante!
Questo codice è quello che ho scritto sopra e c'è anche una foto
Questo codice è quello che ho scritto sopra e c'è anche una foto