Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 6. - pagina 766

 
Vinin:
Siete sicuri cheArraySetAsSeries()restituisca ciò di cui avete bisogno. O forse pensate che sia quello di cui avete bisogno. Forse non si arriva nemmeno a calcolare.

Il calcolo avviene, l'allarme non viene mai attivato, tutte le chiamate a ArraySetAsSeries() restituiscono True. Solo le ultime barre nella quantità BarsAtOnce sono visualizzate, e inoltre, dopo il primo ritorno dalla funzione OnCalculate, il terminale pensa che tutte le barre siano calcolate (secondo il log).

La soluzione è semplice - creare una propria variabile simile a prev_calculated, ma mi chiedo perché quella regolare non funziona?

L'effetto si osserva sulle versioni 711 e 745 (non ce ne sono altre disponibili)

 
Vinin:
Gli indicatori sembrano semplicemente divorare risorse. Ci sono più calcoli. Anche se - non sono veramente necessari, ma sono richiesti.
Ho chiuso tutte le finestre del grafico tranne una. Rimosso tutti gli indicatori. Ho riavviato il terminale vuoto (senza indicatori e Expert Advisors) e con un grafico. - Non funziona! Il carico del processore è lo stesso: 29%.
 
logut:
Ho bisogno di lotti doppi = 0,01;
input int takeprofit = 100;
input int stoploss = 100;
extern int magic = 123;
//----------------+
int start()
{




//---------------+


int ticket=OrderSend(Symbol(),OP_BUYLIMIT,lots,Ask,3,Ask +stoploss* Point, Ask + takeprofit* Point,NULL,123,120,CLR_NONE);






ritorno(0);

}

Ho bisogno di un consiglio su come scrivere un EA con un ordine pendente. Sono nuovo in questo settore e sono stato perplesso per un mese.
L'Expert Advisor implementa una strategia. La strategia implica condizioni per entrare e uscire dal mercato. Pertanto, non dovremmo chiedere: come scrivere un EA per gli ordini pendenti? Possiamo chiedere: come scrivere una procedura per aprire gli ordini in sospeso? E inoltre, gli ordini pendenti - cosa sono? Bene, qui abbiamo una risposta: gli ordini pendenti sono impostati ad una certa distanza dal prezzo corrente. Pertanto,non possiamo impostare il prezzo corrente (Ask/Bid) nelle variabili del comando/funzioneOrderSend() per gli ordini in sospeso. Devi impostare il prezzo a una certa distanza dal prezzo corrente tenendo conto dei requisiti/limitazioni del tuo centro di negoziazione.
 
ikatsko:
Il consulente implementa una sorta di strategia. La strategia implica condizioni per entrare e uscire dal mercato. Pertanto, non dovremmo chiedere: come scrivere un EA per gli ordini pendenti? Possiamo chiedere: come scrivere una procedura per aprire gli ordini in sospeso? E inoltre, gli ordini pendenti - cosa sono? Bene, qui abbiamo una risposta: gli ordini pendenti sono impostati ad una certa distanza dal prezzo corrente. Pertanto,non possiamo impostare il prezzo corrente (Ask/Bid) nelle variabili del comando/funzioneOrderSend() per gli ordini in sospeso. Devi impostare il prezzo a una certa distanza dal prezzo corrente tenendo conto dei requisiti/limitazioni del tuo centro di negoziazione.
Ho provato a impostare PRICE_OPEN, ma come indicare a quale distanza
 
logut:
Ho provato a mettere PRICE_OPEN ma come specificare quanta distanza
Questo è il problema principale della strategia, la tua strategia che vuoi implementare come EA. Per esempio, c'è il prezzo attuale di uno strumento (per esempio EURUSD). Secondo la tua strategia, se il prezzo sale di 20 pip, allora (!) inizierà sicuramente a scendere. Perciò metti un ordine pendente ad una distanza di 20 pip dal prezzo corrente.
 
ikatsko:
Questa è la questione principale della strategia, la tua strategia che vuoi implementare sotto forma di un EA. Per esempio, c'è il prezzo attuale di uno strumento (per esempio EURUSD). Secondo la vostra strategia, per esempio, si presume che se il prezzo sale di 20 punti, allora (!) il prezzo inizierà sicuramente a scendere. Perciò metti un ordine pendente ad una distanza di 20 pip dal prezzo corrente.

Ben fatto. Cinque punti.

 
ikatsko:
Questa è la questione principale della strategia, la tua strategia che vuoi implementare come EA. Per esempio, c'è il prezzo attuale di uno strumento (per esempio EURUSD). Secondo la vostra strategia, per esempio, si presume che se il prezzo sale di 20 punti, allora (!) il prezzo inizierà sicuramente a scendere. Perciò metti un ordine pendente ad una distanza di 20 pip dal prezzo corrente.

Aspettatevi una raffica di domande. Cos'è un punto, chi è il prezzo Ask, il prezzo Bid, chi è il centro dealing, qual è la strategia ... in breve, è un casino... Si possono fare domande, ma la domanda è: cos'è un punto e cos'è un Bid?

 
logut:
Ho bisogno di lotti doppi = 0,01;
input int takeprofit = 100;
input int stoploss = 100;
extern int magic = 123;
//----------------+
int start()
{




//---------------+


int ticket=OrderSend(Symbol(),OP_BUYLIMIT,lots,Ask,3,Ask +stoploss* Point, Ask + takeprofit* Point,NULL,123,120,CLR_NONE);






ritorno(0);

}

Ho bisogno di alcuni consigli su come scrivere un suggerimento con un trailing stop sono nuovo in questo business, sono stato perplesso su di esso per un mese, ho uno schema
Volante, bagagliaio, come essere Mosca?
 
logut:
Ho provato a mettere PRICE_OPEN ma come faccio a specificare la distanza

Posso aiutarla? Sono bravo in questo! Inserisci il tuo codice con il pulsante SRC e guarda com'è bello!

input double lots = 0.01;
input int takeprofit = 100;
input int stoploss = 100;
 extern int magic = 123;
//----------------+
int start()
{


 


//---------------+


int ticket=OrderSend(Symbol(),OP_BUYLIMIT,lots,Ask,3,Ask +stoploss* Point, Ask + takeprofit* Point,NULL,123,120,CLR_NONE);






return(0);

} 

Tutto quello che devi fare è usare la conoscenza del Tutorial e della Documentazione per riempire tutti i pezzi mancanti! Tutti hanno sempre iniziato allo stesso modo, e tu non fai eccezione. Vi auguro di avere successo nei vostri studi!

 
AlexeyVik:

E prima di ripetere le sciocchezze di qualcun altro non puoi controllare?

Non importa a che ora la funzione StringToTime() conta i secondi dal 01.01.1970 00:00:00 GMT, UTC, ora del server o ora locale, purché il tempo passato dalla data specificata all'ora specificata sia XXX secondi. E quando si imposta il tempo di controllo, viene anche calcolato dal 01.01.1970 00:00:00 secondo il tempo specificato da voi. In altre parole, nella condizione if(TimeCurrent() >= StringToTime("23:15"), significa che se il tempo del server dal 01.01.1970 00:00: 00è passato tanto o più secondi del tempo di controllo specificato diXXX secondi. E non c'è confusione su questo.

Soprattutto per te ho fatto uno screenshot, letto il commento e poi sperimentato.

Il tuo problema può essere che il commercio può finire alle 23:00

Non ho notato subito la risposta. Beh, ad essere onesti non ho capito bene cosa intendi affermando che non c'è confusione.

Cosa intendete con "non importa a che oraStringToTime() conta i secondi trascorsi"?

La funzione essenzialmente prende una data del tutto sinistra(credo che la data del PC locale sia sinistra) e confronta l'ora corrente del server del broker con essa, perché non dovrebbe avere importanza?

Dallo screenshot qui sopra, il commento dice che l'ora sul tuo PC locale è 1 ora avanti rispetto all'ora del broker, cioè lo spostamento GMT è maggiore. Se fosse X ore in meno, sarebbe critico, come nel caso di cui ho scritto venerdì.

Per quanto riguarda la fine del tempo di negoziazione. Immagino che per la funzioneStringToTime() non dovrebbeimportare quando il broker finisce il giorno o la settimana di trading...

Motivazione: