[ARCHIVIO]Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Non posso andare da nessuna parte senza di te - 5. - pagina 123
Quindi il valore sarà sempre = valore1. Il codice si rifiuta ostinatamente di capire != (non uguale)
2. Domanda /Apertura Ricerca Chiusura/.
Quello che voglio dal programma ma non funziona.
1.Controllare la condizione (vero; falso)
2. Se c'è un ordine del genere, non lo apriamo; se non c'è un ordine, lo apriamo. Secondo la condizioneOrderComment()
3. Controllo Se si verifica l'evento X o Y , chiudilo. X-(per esempio un altro segnale iMA1>iMA2, Y-un altro segnale iMA2>iMA3)
È così che faccio, ma non viene fuori niente.
if (MA1>MA2 && MA1!=MA2 && MA1<MA3 && MA2>MA3 && MA2!=MA3)
{
for (int i=1;i<=OrdersTotal(); i++)
{
if(OrderSelect(i-1,SELECT_BY_POS,MODE_TRADES)==true)
{
if (OrderComment()=="значение1")return(0);
else
{
OrderSend(Symbol(),OP_SELL, LOT,NormalizeDouble(Bid,Digits),2,0,0,com,Magic,0,Red);
}
}
}
}
E come chiudere non capisco dove inserire.
3. Domanda sull'offset (int shift)
Nel secondo gruppo di iMA, sposto la relativa barra corrente indietro di 3) Che cosa per, in modo che quando un segnale descritto sopra, non aprire ordini ripetuti su ogni barra. Ma lo spostamento non avviene per qualche motivo.
3. Vedi cos'è esattamente questo cambiamento e chi lo sposta
Grazie mille per una risposta così rapida.
Circa 1. Sì, ho capito, scaveremo lì.
Il 2.se (condizioni di chiusura) OrderClose(...) (è chiaro senza) Ma mi sono confuso in if, what per where dove e why....
Correggere se sbagliato....
if (MA1>MA2 && MA1!=MA2 && MA1<MA3 && MA2>MA3 && MA2!=MA3) // если true то заходим в тело цикла...
{
for (int i=1;i<=OrdersTotal(); i++) //шаг2 проверяем все ордера на наличие ордера со значением1
{
if(OrderSelect(i-1,SELECT_BY_POS,MODE_TRADES)==true)
{
if (OrderComment()=="значение1")return(0); // если орден найден то ничего не делаемelse
{
OrderSend(Symbol(),OP_SELL, LOT,NormalizeDouble(Bid,Digits),2,0,0,com,Magic,0,Red); // а вот тут проблемы кто за чем идёт и куда вставить условие закрытие отдельно за телом всего условия (ma1;ma2 и тд), или там где OrderSelect()
}
}
}
}
L'indice del valore ottenuto dal buffer dell'indicatore (spostamento relativo alla barra corrente del numero specificato di periodi indietro). da mql4 help
Per 2.se (condizioni di chiusura) OrderClose(...) (questo è comprensibile senza) Ma sono confuso in if, what per where dove e why....
Correggere se sbagliato....
if (MA1>MA2 && MA1!=MA2 && MA1<MA3 && MA2>MA3 && MA2!=MA3) // если true то заходим в тело цикла...
{
for (int i=1;i<=OrdersTotal(); i++) //шаг2 проверяем все ордера на наличие ордера со значением1
{
if(OrderSelect(i-1,SELECT_BY_POS,MODE_TRADES)==true)
{
if (OrderComment()=="значение1")return(0); // если орден найден то ничего не делаемelse
{
OrderSend(Symbol(),OP_SELL, LOT,NormalizeDouble(Bid,Digits),2,0,0,com,Magic,0,Red); // а вот тут пока написано следующее: для каждого из ордеров у которого мы сюда зашли мы поставим еще один ордер
}
}
}
}
Scusa, perché controllare le disuguaglianze quando la condizione è già data! Questo rallenta la lettura delle condizioni e il loro adempimento!
if (MA1>MA2 && MA1!=MA2 && MA1<MA3 && MA2>MA3 && MA2!=MA3)//MA1!=MA2 && и && MA2!=MA3 не нужны, т.к. в предыдущих сравнениях//равенство ухе исключено! Так что нужно так:if (MA1>MA2 && MA1<MA3 && MA2>MA3)
Scusa, perché controllare le disuguaglianze quando la condizione è già data! Questo rallenta la lettura delle condizioni e il loro adempimento!
Mi dispiace, mi sono perso un po', all'inizio non ci ho fatto caso. Questi calcoli sono fatti per 4 MA, e ci sono casi in cui MA1>MA2 e al momento MA3=MA4 (quindi il controllo è necessario perché è così che la strategia è costruita)
if (MA1>MA2 && MA1!=MA2 && MA1<MA3 && MA2<MA3 && MA2!=MA3 && MA3<MA4 && MA3!=MA4) // если true то заходим в тело цикла...
{
for (int i=1;i<=OrdersTotal(); i++) //шаг2 проверяем все ордера на наличие ордера со значением1
{
if(OrderSelect(i-1,SELECT_BY_POS,MODE_TRADES)==true)
{
if (OrderComment()=="значение1")return(0); // если орден найден то ничего не делаемelse
{
if (OrderComment()!="значение1") // если такого ордера нету
{
OrderSend(Symbol(),OP_SELL, LOT,NormalizeDouble(Bid,Digits),2,0,0,com,Magic,0,Red); // тогда открываем
}
}
if (MA1<MA2 && MA1!=MA2 && MA1>MA3 && MA1!=MA3 && MA3>MA4 && MA3!=MA4) // если true новый сигнал
{
OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Ask,Digits),3,CLR_NONE); // тогда закрываем
}
}
}
}
Sì, scusa, mi sono confuso, è la prima volta che scrivo sul forum. Prima ho copiato, poi ho deciso di scrivere a mano e mi sono confuso... ma l'esempio sopra è corretto...
Per coloro che capiscono mql4 più di me, per favore aiutatemi. Ci sono 3 domande.
1.Primo sulla doppia costante. Abbiamo tutti conosciuto iMa, maschere, media mobile/ La domanda è: Mappatura errata dei valori.
Esempio:
Quindi il valore sarà sempre = valore1. Il codice si rifiuta ostinatamente di capire != (non uguale)
2. Domanda /Apertura Ricerca Chiusura/.
Quello che voglio dal programma ma non funziona.
1.Controllare la condizione (vero; falso)
2. Se c'è un ordine del genere, non lo apriamo; se non c'è un ordine, lo apriamo. Secondo la condizioneOrderComment()
3. Controllo Se si verifica l'evento X o Y , chiudilo. X-(per esempio un altro segnale iMA1>iMA2, Y-un altro segnale iMA2>iMA3)
È così che faccio, ma non viene fuori niente.
E come chiudere non capisco dove inserire.
3. Domanda sull'offset (int shift)
Nel secondo gruppo di iMA, sposto la relativa barra corrente indietro di 3) Che cosa per, in modo che quando un segnale descritto sopra, non aprire ordini ripetuti su ogni barra. Ma lo spostamento non avviene per qualche motivo.
Per favore, aiutatemi con la conoscenza. Non so come usarlo. Non so dove in Internet ci sia un'implementazione simile.
Per coloro che capiscono mql4 più di me, per favore aiutatemi. Ci sono 3 domande.
1.Primo per doppio costante.
2. come chiudere non capisco affatto dove mettere.
3. Domanda sull'offset (int shift)
1. https://www.mql5.com/ru/articles/1561
2. se (condizioni di chiusura) OrderClose(...)
3. Vedere cos'è esattamente questo cambiamento e chi lo sposta1. https://www.mql5.com/ru/articles/1561
2. se (condizioni di chiusura) OrderClose(...)
3. Vedi cos'è esattamente questo cambiamento e chi lo spostaGrazie mille per una risposta così rapida.
Circa 1. Sì, ho capito, scaveremo lì.
Il 2.se (condizioni di chiusura) OrderClose(...) (è chiaro senza) Ma mi sono confuso in if, what per where dove e why....
Correggere se sbagliato....
L'indice del valore ottenuto dal buffer dell'indicatore (spostamento relativo alla barra corrente del numero specificato di periodi indietro). da mql4 help
Grazie mille per una risposta così rapida.
Per 2.se (condizioni di chiusura) OrderClose(...) (questo è comprensibile senza) Ma sono confuso in if, what per where dove e why....
Correggere se sbagliato....
Scusa, perché controllare le disuguaglianze quando la condizione è già data! Questo rallenta la lettura delle condizioni e il loro adempimento!
Scusa, perché controllare le disuguaglianze quando la condizione è già data! Questo rallenta la lettura delle condizioni e il loro adempimento!
C'è qualcosa di strano qui.
if (MA1>MA2 && MA1<MA3 && MA2>MA3)MA1>MA2 e MA2>MA3 e poi MA1<MA3
Soprattutto perché è sufficiente
if (MA1>MA2 && MA2>MA3)Scusa, perché controllare le disuguaglianze quando la condizione è già data! Questo rallenta la lettura delle condizioni e il loro adempimento!
Mi dispiace, mi sono perso un po', all'inizio non ci ho fatto caso. Questi calcoli sono fatti per 4 MA, e ci sono casi in cui MA1>MA2 e al momento MA3=MA4 (quindi il controllo è necessario perché è così che la strategia è costruita)
Come questo?????
C'è qualcosa di strano qui.
MA1>MA2 e MA2>MA3 e poi MA1<MA3
Sì, scusa, mi sono confuso, è la prima volta che scrivo sul forum. Prima ho copiato, poi ho deciso di scrivere a mano e mi sono confuso... ma l'esempio sopra è corretto...
MA1>MA2 e MA1<MA3 e MA3<MA4
Buon pomeriggio.
Per favore aiutatemi a modificare l'indicatore.
Ho un Pivot standard, vorrei avere un indicatore che calcola i livelli usando formule standard, ma usando i dati H, L, C che inserisco io stesso.
Voglio usarlo come indicatore per i miei indicatori.