[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate. Non posso andare da nessuna parte senza di te. - pagina 1093

 
Ho una domanda simile a quella di Dimka-novitsek. Esiste questa possibilità: se apriamo un ordine di vendita OP_SELL su un simbolo, senza chiuderlo, lo cambiamo in ordine di acquisto OP_BUY sul nostro simbolo (può solo cambiare il suo numero o qualcosa del genere). Corrispondentemente questo cambierà la dimensione del deposito in favore del risultato dell'affare + o -, ma risparmiando lo spread. Oppure, devo semplicemente chiudere l'ordine OP_SELL e aprire un nuovo ordine OP_BUY per comprare, perdendo lo spread? Se esiste questa possibilità, posso vedere il codice pronto?
 
kolyango:
Ho una domanda simile a quella di Dimka-novitsek. Esiste questa possibilità: se apriamo un ordine di vendita OP_SELL su un simbolo, senza chiuderlo, lo cambiamo in ordine di acquisto OP_BUY sul nostro simbolo (può solo cambiare il suo numero o qualcosa del genere). Corrispondentemente questo cambierà la dimensione del deposito a favore del risultato dell'affare + o -, ma risparmiando lo spread. Oppure, devo solo chiudere l'ordine OP_SELL e aprire un nuovo ordine OP_BUY per comprare, perdendo lo spread? Se esiste questa possibilità, posso vedere il codice pronto?

La direzione dell'ordine non può essere cambiata. Potete chiuderne solo 1 e aprirne un altro.
 
kolyango:
Ho una domanda simile a quella di Dimka-novitsek. Esiste questa possibilità: se apriamo un ordine di vendita OP_SELL su un simbolo, senza chiuderlo, lo cambiamo in ordine di acquisto OP_BUY sul nostro simbolo (può solo cambiare il suo numero o qualcosa del genere). Corrispondentemente questo cambierà la dimensione del deposito a favore del risultato dell'affare + o -, ma risparmiando lo spread. Oppure, devo semplicemente chiudere l'ordine OP_SELL e aprire un nuovo ordine OP_BUY per comprare, perdendo lo spread? Se esiste questa possibilità, posso vedere il codice pronto?

Guarda OrderCloseBy()
 
Vinin:

Guarda OrderCloseBy()

La funzione OrderCloseBy()

bool OrderCloseBy(int ticket, int opposite, color Color=CLR_NONE)

Questa funzione chiude un ordine di mercato con un altro ordine di mercato, aperto per lo stesso strumento finanziario, ma nella direzione opposta. La funzione restituisce TRUE se la funzione si completa con successo e FALSE se la funzione fallisce.

Parametri:

ticket - Il numero di sequenza unico dell'ordine da chiudere.

Opposite - Il numero di sequenza unico dell'ordine opposto.

Colore - Colore della freccia di chiusura sul grafico. Se il parametro manca o il suo valore è CLR_NONE, la freccia non apparirà nel grafico.

La dimensione degli ordini opposti non deve essere la stessa. Se le dimensioni degli ordini non corrispondono, l'operazione di compravendita viene eseguita nella dimensione dell'ordine più piccolo.

E cosa succede se non c'è un altro ordine di mercato aperto nella direzione opposta? È già impossibile? Se c'è un modo simile, per favore aiutatemi! Molto necessarionnnnn!!!!!!!!!!!!! Non vorrei perdere un altro spread in caso di chiusura consecutiva -> apertura...

 
kolyango:

Funzione OrderCloseBy()

Questa funzione chiude un ordine di mercato con un altro ordine di mercato aperto per lo stesso strumento finanziario, ma nella direzione opposta. La funzione restituisce TRUE se la funzione si completa con successo, e FALSE se la funzione fallisce.

Parametri:

ticket - Il numero di sequenza unico dell'ordine da chiudere.

Opposite - Il numero di sequenza unico dell'ordine opposto.

Colore - Colore della freccia di chiusura sul grafico. Se il parametro manca o il suo valore è CLR_NONE, la freccia non apparirà nel grafico.

La dimensione degli ordini opposti non deve essere la stessa. Se le dimensioni degli ordini non corrispondono, l'operazione di compravendita viene eseguita nella dimensione dell'ordine più piccolo.

E cosa succede se non c'è un altro ordine di mercato aperto nella direzione opposta? È già impossibile? Se c'è un modo simile, per favore aiutatemi! Molto necessarionnnnn!!!!!!!!!!!!! Mi dispiacerebbe molto perdere un altro spread in caso di chiusura consecutiva -> apertura...


L'ho visto. E per pensarci un po'?
 
kolyango:

Funzione OrderCloseBy()

Questa funzione chiude un ordine di mercato con un altro ordine di mercato aperto per lo stesso strumento finanziario, ma nella direzione opposta. La funzione restituisce TRUE se la funzione si completa con successo, e FALSE se la funzione fallisce.

Parametri:

ticket - Il numero di sequenza unico dell'ordine da chiudere.

Opposite - Il numero di sequenza unico dell'ordine opposto.

Colore - Colore della freccia di chiusura sul grafico. Se il parametro manca o il suo valore è CLR_NONE, la freccia non apparirà nel grafico.

La dimensione degli ordini opposti non deve essere la stessa. Se le dimensioni degli ordini non corrispondono, l'operazione di compravendita viene eseguita nella dimensione dell'ordine più piccolo.

E cosa succede se non c'è un altro ordine di mercato aperto nella direzione opposta? È già impossibile? Se c'è un modo simile, per favore aiutatemi! Davvero bisogno!!!!!!!!!!!!!

La funzione OrderCloseBy() non va bene per i lanci. Chiude solo gli ordini opposti.

Per fare un colpo, devi chiuderne uno e aprire l'ordine opposto, o aprire un ordine nella direzione opposta con un lotto due volte più grande del primo.

Dopo di che, potete usare la funzione OrderCloseBy(), se lo ritenete necessario.

Esempio:

Se un Sell LOT=0.1 aperto, apri un Buy LOT=0.2 per invertire.

Potete usare OrderCloseBy() per "chiudere" LOT=0.1 sia in vendita che in acquisto, ma lasciare solo BAY LOT=0.1.

-

 
DhP:

La funzione OrderCloseBy() non è adatta ai lanci. Chiude semplicemente gli ordini opposti.

Per fare un flip, devi chiuderne uno e aprire l'ordine opposto, oppure aprire un ordine nella direzione opposta, con un lotto due volte più grande del primo.

Dopo di che, potete usare la funzione OrderCloseBy(), se lo ritenete necessario.

Esempio:

Se un Sell LOT=0.1 aperto, apri un Buy LOT=0.2 per invertire.

Potete usare OrderCloseBy() per "chiudere" LOT=0.1 sia in vendita che in acquisto, ma lasciare solo BAY LOT=0.1.

-


Sì, ma in questo caso non c'è risparmio di spread! Va tutto bene, MA se il mercato va nella direzione che hai scelto, SE NON VA - PERDONO!
 
kolyango:

Sì, ma in questo caso, non c'è risparmio dello spread! Tutto questo va bene, ma se il mercato va nella direzione che avete scelto, SE NO - si perde, E DUE volte di più?


In questo caso non ti verranno addebitati (quando utilizzi la funzione) 2 spreads.

E nel caso di un'inversione di mercato e con due ordini, non si riceve una doppia perdita, perché il primo trade aperto inizia a lavorare per un profitto. Cioè, in effetti, solo un LOT=0.1 è aperto.

 


Se apri Sell/Lot=0.1 per un rollover, apri Buy/Lot=0.2.

Puoi usare la funzione OrderCloseBy() per "cancellare" LOT=0.1 sia a Sell che a BAY, lasciando solo BAY LOT=0.1.

Qual è il punto? Quando apri BAY BOT=0.2 prendi già 2 volte di più, cioè se hai appena chiuso BOT=0.1 e aperto BOT=0.1 hai ottenuto lo stesso!

 
kolyango:


Se hai aperto Sell LOT=0.1 per un rollover, apri Buy LOT=0.2.

Potete usare la funzione OrderCloseBy() per "cancellare" LOT=0.1 sia per Sell che per BAY, lasciando solo BAY LOT=0.1.

Qual è il punto? Quando aprite BAY LOT=0.2 vi verrà già addebitato il doppio, cioè se avete appena chiuso LOT=0.1 e aperto LOT=0.1 avrete lo stesso!!!!


Guarda qui. Non ci vuole molto tempo per farlo. Un EA con chiusura normale, l'altro usa OrderCloseBy().

Confrontare i risultati e poi dire

Motivazione: