Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 188

 
Vitalie Postolache:

Quindi la commissione non ha niente a che fare con i prezzi. Viene addebitato sull'ordine, indipendentemente dal numero di pip che il prezzo ha passato durante la durata di questo ordine. Sì, possiamo convertirlo in punti, ma sarà un po' più grande dello spread. Allora, ho chiesto, a cosa serve? Forse, i Pipsatters con gli obiettivi inferiori allo spread?
Forse hai ragione. Se trasferisco commissione + swap(!) allora ha più senso, e se sono sul mercato per molto tempo, il costo può essere fino a 25 punti e se non aggiungo questi punti al trail o al Breakeven, chiuderò alla fine con una perdita.
 
Vitaly Muzichenko:
Forse hai ragione. Trasferisco commissione + swap(!), e poi ha molto senso, e se siamo sul mercato per molto tempo, il costo può essere fino a 25pp, e se non aggiungiamo questi punti a trawl o breakeven, finiamo per chiudere in una posizione negativa
Per quanto riguarda lo swap, sono completamente d'accordo, cambia con il tempo, soprattutto quando lo swap è positivo e un grande ordine è appeso per una settimana o due. E la commissione aumenta con il tempo? Sembra essere una somma forfettaria.
 
Vitalie Postolache:
Sono completamente d'accordo sullo swap, cambia nel tempo, particolarmente bello quando lo swap è positivo e un grande ordine rimane in giro per una settimana o due. La commissione cresce nel tempo? Sembra essere una somma forfettaria.
La commissione è approssimativamente fino a 1pp e non cambia nel tempo, ma è comunque piacevole quando viene presa in considerazione quando si spostano i Breakeven e i Trailing stop, non è necessario aggiungere nulla manualmente, il programma farà tutto).
 
Vitaly Muzichenko:
La commissione è approssimativamente fino a 1pp e non cambia nel tempo, ma è comunque piacevole quando viene presa in considerazione quando si spostano gli stop di Breakeven e Trawl, non c'è bisogno di aggiungere nulla manualmente, il programma farà tutto)


C'è qualcosa di sbagliato nel vostro codice:

tv=SymbolInfoDouble(Symbol(),SYMBOL_TRADE_TICK_VALUE);

(OrderCommission()/(tv*OrderLots()))*Point()

Forse questo è meglio?

double tv=SymbolInfoDouble(Symbol(),SYMBOL_TRADE_TICK_VALUE);
int comissionpoints=int(OrderCommission()/tv/OrderLots());
Ma se la commissione è inferiore a 1, il codice restituirà 0. O punti in formato doppio da rappresentare?
 
Vitalie Postolache:


C'è qualcosa di sbagliato nel vostro codice:

Questo sarebbe meglio?

Non è come è meglio, è come è giusto. Il codice è stato estratto da un thread vicino, e probabilmente è corretto)
 
Vitaly Muzichenko:
Non è il modo giusto, è il modo giusto. Ho preso il codice da un ramo vicino e probabilmente è corretto)


Beh, sembra più corretto non moltiplicare per Punto.

Se il prezzo di un ordine da 1 lotto si muove di 1 pip, allora il suo profitto sarà cambiato di: OnePipCharge = Tickvalue * 1Lot * 1Point. Da qui si ricava il numero di pip, se l'importo nella valuta di base è noto: Pips = Charge/Lots/Tickvalue.

Non è così?

 

Tornando al mio, di gran lunga, argomento dolente - la modifica EA specificamente sugli account ndd.

1. Se ci sono già ordini aperti sulla coppia e viene aperto un nuovo ordine, allora tutto viene modificato immediatamente (media).

2. Se non ci sono ordini e viene aperto un nuovo ordine, cioè appare un ordine, questo non viene modificato (anche se nella stessa società di intermediazione su un conto semplice tutto viene modificato come dovrebbe essere e già da diversi mesi). L'ordine viene modificato alla prossima apertura del terminale. Nei log generali non c'è niente di niente e nei log di MQL4 c'è un errore 130 (stop sbagliato), dopo che un ordine è stato aperto.

3. Oggi stavo guardando - l'ordine è stato aperto, uno sulla coppia, ma non è stato modificato, le quotazioni per la coppia erano in arrivo (ho supposto una tale variante). Ricordando le varianti precedenti, ho riavviato il terminale, ma l'ordine non è stato modificato. Quando ho eseguito il terminale al mattino (ho grafici giornalieri) l'ordine è stato modificato.

Cosa può essere? La mia opinione. Forse dovremmo impostare direttamente il TP richiesto nella funzione di apertura? Bene, l'apertura dell'ordine dovrebbe essere fatta secondo le regole dei conti nd e poi i TP e SL dovrebbero essere impostati.

 
Youri Lazurenko:

Torniamo al mio argomento, di gran lunga, dolente - la modifica EA specificamente sugli account ndd.

1. Se ci sono già ordini aperti sulla coppia e viene aperto un nuovo ordine, allora tutto viene modificato immediatamente (media).

2. Se non ci sono ordini e viene aperto un nuovo ordine, cioè appare un ordine, questo non viene modificato (anche se nella stessa società di intermediazione su un conto semplice tutto viene modificato come dovrebbe essere e già da diversi mesi). L'ordine viene modificato alla prossima apertura del terminale. Nei log generali non c'è niente di niente e nei log di MQL4 c'è un errore 130 (stop sbagliato), dopo che un ordine è stato aperto.

3. Oggi stavo guardando - l'ordine è stato aperto, uno sulla coppia, ma non è stato modificato, le quotazioni per la coppia erano in arrivo (ho supposto una tale variante). Ricordando le varianti precedenti, ho riavviato il terminale, ma l'ordine non è stato modificato. Quando ho eseguito il terminale al mattino (ho grafici giornalieri) l'ordine è stato modificato.

Cosa può essere? La mia opinione. Forse dovremmo impostare direttamente il TP richiesto nella funzione di apertura? Bene, le regole di nd-accounts sembrano essere: prima apriamo un ordine e poi impostiamo TP e SL.

Aprite una posizione con un TP e uno SL non nulli contemporaneamente?

Provate prima ad aprire una posizione con uno stop e un take uguali a zero, controllate che la posizione sia aperta, e modificate lo stop e il take ai valori richiesti.

 
Artyom Trishkin:

Aprite una posizione con uno stop and take non nullo?

Prova ad aprire una posizione con uno stop e un take uguali a zero, controlla che la posizione sia aperta e modifica i suoi stop e take ai valori giusti.


È così che funziona per me - aprire un ordine con zero TP e SL, e poi modificare (l'ordine) con i giusti parametri TP e SL. Ho già scritto, tutto funziona e ha funzionato bene su altri account, solo su ndd tale cosa. Non ho lavorato con nessun altro con conti simili prima, non posso fare confronti. Forse è solo il bleeping di forex4u, o forse tutti gli account ndd. Mi piacerebbe saperlo per il futuro.
 
Vitalie Postolache:


Beh, sembra più corretto non moltiplicare per Punto.

Se il prezzo di un ordine 1Lot si muove di 1 pip, il suo profitto cambierà in: OnePipCharge = Tickvalue * 1Lot * 1Point. Da qui, derivare il numero di pip se l'importo nella valuta di base è noto: Pips = Charge/Lots/Tickvalue.

Non è vero?

Qual è la differenza

Pip = Carica/Lotti/Valore di tick in numeri specifici 8/2/4 = 1

o

Pips = Charge/(Lots*Tickvalue) in termini concreti 8/(2*4) = 8/8 = 1

I numeri frazionari possono anche essere usati...