[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Non potrei andare da nessuna parte senza di te - 2. - pagina 50

 

Nell'EA stesso, l'intero codice è esposto.

Grazie mille a tutti voi per il vostro aiuto.

 
Sergstuddek:

Salve. Per favore, aiuta una persona che soffre.

Ho appena iniziato a imparare MQL e ho deciso di scrivere il mio primo Expert Advisor.

Voglio spiegare perché non apre gli ordini in sospeso e qual è il problema.

int OpenStops()
{
if(OrderSelect(CalculateCurrentOrders1(Symbol(),SELECT_BY_POS,MODE_TRADES)==true && OrderType()==OP_BUY) // controlla per un ordine di acquisto aperto
biglietto int;
double LotSize=OrderLots(); // dimensione del lotto dell'ordine aperto
double OpenPrice=OrderOpenPrice(); // prezzo di apertura dell'ordine
ticket=OrderSend(Symbol(),OP_SELLSTOP,LotSize*2,OpenPrice-DS*Point,0,SL*Point,TP*Point,"",MAGIC,0,Red); // Aprire un ordine di vendita nella direzione opposta all'ordine aperto
ticket=OrderSend(Symbol(),OP_BUYSTOP,Lot,OpenPrice+TP*Point,0,SL*Point,TP*Point,"",MAGIC,0,Blue); // aprire una posizione di acquisto per la continuazione dell'ordine aperto

if(OrderSelect(CalculateCurrentOrders1(Symbol())SELECT_BY_POS,MODE_TRADES)==true && OrderType()==OP_SELL) // Controlla la presenza di un ordine di vendita aperto
ticket=OrderSend(Symbol(),OP_SELLSTOP,Lot,OpenPrice-TP*Point,0,SL*Point,TP*Point,"",MAGIC,0,Red); // aprire un ordine pendente di acquisto
ticket=OrderSend(Symbol(),OP_BUYSTOP,LotSize*2,OpenPrice+DS*Point,0,SL*Point,TP*Point,"",MAGIC,0,Blue); // aprire un ordine pendente inverso di acquisto prima dell'ordine aperto
}


Per prima cosa, imparate a inserire correttamente il codice - tramite Counter+Alt+M - poi tutto il resto...
 
Roman.:
Per prima cosa, imparate a inserire correttamente il codice - tramite Counter+Alt+M - poi tutto il resto...
Вот в этом окошке будет код, если воспользоваться кнопкой SRC на верхней панели
 

Potete suggerire uno script o un EA per visualizzare le informazioni sullo schermo (spread, livello di stop, operazioni aperte, profitto sulle operazioni, profitto del giorno, ecc.) Grazie.

 
granit77:



Grazie per il tuo aiuto, mi ha aiutato molto
 
Salve. Per favore, aiuta una persona che soffre.

Ho appena iniziato a imparare MQL e ho deciso di scrivere il mio primo Expert Advisor, ma ho un problema

nel codice, gli ordini pendenti non si aprono, per favore dimmi perché e qual è il problema.
int OpenStops()
{
if(OrderSelect(CalculateCurrentOrders1(Symbol()),SELECT_BY_POS,MODE_TRADES)==true && OrderType()==OP_BUY) // Проверка на то что открытый ордер на покупку
int ticket;
double LotSize=OrderLots(); // Размер лота открытого ордера
double OpenPrice=OrderOpenPrice(); // Цена открытия открытого ордера
ticket=OrderSend(Symbol(),OP_SELLSTOP,LotSize*2,OpenPrice-DS*Point,0,SL*Point,TP*Point,"",MAGIC,0,Red); // Открытие отложки на продажу в противополжну сторону до открытого ордера 
ticket=OrderSend(Symbol(),OP_BUYSTOP,Lot,OpenPrice+TP*Point,0,SL*Point,TP*Point,"",MAGIC,0,Blue); // Открытие отложки на покупку в сторону продолжения до открытого ордера

if(OrderSelect(CalculateCurrentOrders1(Symbol()),SELECT_BY_POS,MODE_TRADES)==true && OrderType()==OP_SELL) // Проверка на то что открытый ордер на продажу
ticket=OrderSend(Symbol(),OP_SELLSTOP,Lot,OpenPrice-TP*Point,0,SL*Point,TP*Point,"",MAGIC,0,Red); // Открытие отложки на покупку в сторону продолжения до открытого ордера
ticket=OrderSend(Symbol(),OP_BUYSTOP,LotSize*2,OpenPrice+DS*Point,0,SL*Point,TP*Point,"",MAGIC,0,Blue); // Открытие отложки на покупку в противополжну сторону до открытого ордера
}
Questo è meglio.
File:
 
Sergstuddek:

Non vedo il problema degli ordini pendenti nel codice, devo solo chiedere perché.

In ordine:

if(OrderSelect(CalculateCurrentOrders1(Symbol()),SELECT_BY_POS,MODE_TRADES)==true && OrderType()==OP_BUY) // Проверка на то что открытый ордер на покупку
int ticket;

OrderSelect ha CalculateCurrentOrders1 fuori portata, il massimo "POS" sarebbe CalculateCurrentOrders1(Symbol())-1. Il costrutto if stesso: se la condizione è soddisfatta, si dichiara una variabile "ticket"? Una parentesi graffa è chiaramente necessaria da qualche parte. Non riesco proprio a capire cosa stai cercando di fare. Sei ovviamente all'inizio di un lungo cammino, avrei potuto scriverlo per te, ma non c'è senso in questo codice, quindi è un "compito di apprendimento", quindi vuoi farlo da solo. E giustamente. Se avete domande più specifiche, saremo lieti di aiutarvi.

Anch'io mi sono confuso con le tue parentesi, quindi ho corretto il post.

 
prom18:

Potete suggerire uno script o un EA per visualizzare le informazioni sullo schermo (spread, livello degli stop, operazioni aperte, profitto sulle operazioni, profitto per oggi, ecc.) Grazie.

Tutto tranne la visualizzazione dello spread è nelle schede del terminale. Dubito che lo script lo mostri più chiaramente.

E lo spread in pip può essere visualizzato su un grafico attraverso una linea aggiuntiva nell'EA:

Commento((Ask - Bid) / Punto);

 
Sorento:

Sono orgoglioso di conoscerti.

non è un peccato prendersi il tempo di masticare tutto.

Così si fa!

Grazie!



Anch'io.

sergeev - rispetto e stima)))

P.S. Scusa se sono un po' fuori tema))

 
Figar0:

In ordine:

OrderSelect ha CalculateCurrentOrders1 fuori portata, il massimo "POS" sarebbe CalculateCurrentOrders1(Symbol())-1. Il costrutto if stesso: se la condizione è soddisfatta, si dichiara una variabile "ticket"? Una parentesi graffa è chiaramente necessaria da qualche parte. Non riesco proprio a capire cosa stai cercando di fare. Sei ovviamente all'inizio di un lungo cammino, avrei potuto scriverlo io per te, ma non ha senso questo codice, quindi è una "curva di apprendimento", quindi vuoi farlo tu stesso. E giustamente. Se avete domande più specifiche, saremo lieti di aiutarvi.

Z.I. Anch'io mi sono confuso con le tue parentesi, ho corretto il post.

Grazie mille per aver sottolineato il mio messaggio.

L'idea è probabilmente molto più semplice del mio codice)))) L'idea di questo codice è di impostare gli ordini pendenti rispetto all'ultimo ordine aperto, rispettivamente rispetto al prezzo di apertura e al volume dell'ultimo ordine aperto.

Motivazione: