[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 16

 
Chiripaha:

Ho collegato il testo al prezzo della linea + 3*Point (cioè l'ho messo leggermente più in alto), ma ancora, quando cambio la dimensione del grafico (finestra) il testo è ora sopra la linea, ora sotto, ora al livello della linea (salta)... Perché succede questo? - Sto dando le coordinate del prezzo esatto. Come si risolve?

Ho cercato e provato come lo fanno gli altri, ma l'effetto è simile lì. Voglio capire come si elimina questo "rimbalzo". E soprattutto, perché appare, visto che le coordinate sono difficili: prezzo e tempo.

Il testo è inserito nella descrizione dell'oggetto e il grafico è autorizzato a mostrare le descrizioni degli oggetti (uno dei modi).
 
Usual_Trader:


formalizzi un po' il desiderio. Esattamente quando si chiude un ordine specifico?

Se no, molto semplicemente:

all'inizio del programma

int previous_total_orders=0;

sul corpo del programma:

all'apertura di un nuovo ordine

ordini_precedenti++;

controllare:

se (prevous_orders>OrdersTotal()) CloseAllTrades(Sym); //questa funzione può essere qualsiasi codice che chiude tutti gli ordini per un dato simbolo

Se è l'ultimo ordine aperto che viene chiuso, allora

all'inizio del programma, dichiarare la variabile Last_ticket

quando l'ordine Last_ticket=OrderSend..... è aperto

controllare:

se(OrderSelect(OrderSelect(Last_ticket,SELECT_BY_TICKET, int pool=MODE_TRADES)!=true)CloseAllTrades(Sym);

Ho provato ma non funziona quando si inserisce if(Order Select(OrderSelect(Last_ticket,SELECT_BY_TICKET, int pool=MODE_TRADES)!=true)CloseAllTrades(Sym);

appare un errore:

')' - parentesi destra sbilanciata , '!=' - inizializzazione attesa , 'true' - virgola o punto e virgola atteso , 'Sym' - variabile non definita , 'pool' - variabile già definita .

'Sym' - variabile non definita - ho rimosso questo valore sostituendolo con lasttype==OP_SELL , il resto non lo so




 
Frostr:

Ho provato, ma non funziona quando si inserisce if(OrderSelect(OrderSelect(Last_ticket,SELECT_BY_TICKET, int pool=MODE_TRADES)!=true)CloseAllTrades(Sym);

appare un errore:

')' - parentesi destra sbilanciata , '!=' - inizializzazione attesa , 'true' - virgola o punto e virgola atteso , 'Sym' - variabile non definita , 'pool' - variabile già definita .

Sym' - variabile non definita - ho rimosso questo valore e l'ho sostituito con lasttype==OP_SELL , il resto non lo so.




Non avete notato che non ho scritto questo come codice pronto, ma come idea? ))

Scusa, ho digitatoOrderSelect due volte

if(OrderSelect(Last_ticket,SELECT_BY_TICKET, int pool=MODE_TRADES)!=true)CloseAllTrades(Sym);

La funzioneCloseAllTrades(Sym) è puramente una mia funzione, guarda nella funzione di Kim V., c'è probabilmente una funzione simile che chiude tutti i trade per questa coppia. Dovete dichiarare la variabile Sym come stringa Sym=EURUSD; (questa è una possibile variante della coppia)

 
Chiripaha:

Ho collegato il testo al prezzo della linea + 3*Point (cioè l'ho messo leggermente più in alto), ma ancora, quando cambio la dimensione del grafico (finestra) il testo è ora sopra la linea, ora sotto, ora al livello della linea (salta)... Perché succede questo? - Sto dando le coordinate del prezzo esatto. Come si risolve?

Ho cercato e provato come lo fanno gli altri, ma l'effetto è simile lì. Voglio capire come si elimina questo "rimbalzo". E soprattutto, perché sembra che le coordinate siano difficili: prezzo e tempo?


Questo accade perché diversi timeframe hanno diverse scale del grafico e i3*Puntihanno diverse dimensioni in pixel. Per fare in modo che la distanza sia sempre la stessa, è necessario selezionarela distanza desiderata in pixel ecalcolare quanti punti sarà perogni timeframe usando le funzioniObjectGet() e ObjectSet(). con identificatore OBJPROP_XDISTANCE, e impostare l'angolo di legame del testo inferiore per avere sempre il testo sopra la linea, e superiore per sotto.
 

Dove posso scaricare le quotazioni normali?

L'archivio delle citazioni si sta scaricando a pezzi per qualche motivo.

 
Buon pomeriggio. Puoi spiegare come organizzare la "multi-modularità"? Voglio che le grandi funzioni siano in file separati.
 
Nekseron:
Buon pomeriggio. Puoi spiegare come organizzare la "multi-modularità"? Voglio che le grandi funzioni stiano in file separati.


  • Una biblioteca
    è una libreria di funzioni utente progettata per memorizzare e distribuire blocchi di programmi utente usati frequentemente. Le biblioteche non possono essere gestite da sole.
    Si raccomanda di memorizzare le librerie interminal_directory\experts\libraries.

  • Ilfile incluso è il testo sorgente di blocchi di programmi utente comunemente usati. Tali file possono essere inclusi in Expert Advisors, script, indicatori personalizzati e librerie in fase di compilazione. L'uso di file di inclusione è più preferibile all'uso di librerie a causa dei costi aggiuntivi di overhead quando si chiamano funzioni di libreria. Si raccomanda di memorizzare i file di inclusione in terminal_directory\experts\include

 
Nekseron:
Buon pomeriggio. Puoi spiegare come organizzare la "multi-modularità"? Voglio che le grandi funzioni stiano in file separati.
Come esempio, potete vedere come è organizzato questo EA, o questo, per esempio.
 

Ciao, Qualcuno può per favore consigliare quale sito dove è possibile prendere in prestito una piccola quantità di WMZ con un certificato formale, ho bisogno di un urgente 3 WMZ e andare a mettere, ora non posso (((

 
rigonich:

Questo perché diversi timeframes hanno diverse scale del grafico, quindii 3*Puntihanno diverse dimensioni di pixel. Per rendere la distanza sempre uguale, è necessario selezionarela distanza desiderata in pixel econtare il numero di punti perogni timeframe utilizzando le funzioniObjectGet() e ObjectSet(). con identificatore OBJPROP_XDISTANCE, e impostare l'angolo del testo vincolante inferiore al testo era sempre sopra la linea, e superiore a sotto.
Grazie mille, Vitaly! Cercherò di sperimentare. Penso che la variante con un angolo di scatto dovrebbe aiutare. Solo che non so ancora come fare, ma ora è più chiaro con cosa sperimentare. Grazie ancora!