[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 4. - pagina 525
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Da quanto ho capito,Refreshrates( ) lavora sullo strumento corrente o aggiorna i dati su tutti gli strumenti?
Per tutti gli strumenti.
Buona sera.
Sono un po' "crucco" quando si tratta di codificare :) Sto costruendo un Expert Advisor basato sull'indicatore Fibonacci. Non sto prestando attenzione alla strategia finora. Il problema è 7 livelli di Fibonacci, come fare ogni livello attraversato impostare solo 2 diversi ordini pendenti e non di più.
Apprezzerei qualsiasi suggerimento.
Scusa per il mio russo imbarazzante.
Lavoro
P.S. "Un luccio per una carpa crucifera non sonnecchia" (proverbio russo).
Lavoro
P.S. "Un luccio per una carpa crucca" (proverbio russo).
Grazie per il proverbio:))) Proprio sul tema -
Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Senza di te da nessuna parte - 4.
Finiscilo - qualsiasi risposta Profi!
Ciao esperti, per favore aiutatemi a creare uno script. Ci sono due indicatori MA(Moving Average) sul grafico, MA1 è segnato in rosso e MA2 in blu. Il compito dello script: incrociare MA1 e MA2 in modo che la linea rossa incroci quella blu dall'alto in basso. Chiameremo questo punto A e se la linea rossa incrocia quella blu dall'alto verso il basso, sarà il punto B. Quindi, al punto A, abbiamo bisogno dello scrip per chiudere un ordine di vendita e aprire un ordine di acquisto e al punto B per chiudere un ordine di acquisto e aprire un ordine di vendita. Questo ciclo dovrebbe essere infinito. In allegato un codice simile, per favore aiutatemi, vi sarò molto grato
Per non peggiorare la confusione, voglio correggere l'errore che ho fatto nella risposta precedente - la notazione "array1[Bars*6-60,60][0]" non è corretta, perché Bars*6 è il numero totale di elementi in array1.Ogni barra ha 6 proprietà, supponiamo di avere 30 barre, moltiplicando per 6 otteniamo il numero di elementi nel primo array - 180. Il secondo array ha solo 60 "celle" libere (cioè 10 x 6 proprietà), quindi dobbiamo selezionare solo 60 elementi dal primo array da copiare. Esprimendo [Bars*6-60,60] sottraiamo 60 dal totale, cioè 180 - 60 = 120, cioè 120 elementi del primo array saranno scritti nell'elemento zero del secondo, 121 nel primo, e così via. Un'altra domanda è come risulta che le informazioni sulle ultime barre formate non sono scritte all'inizio del primo array, ma alla fine... Ma apparentemente la risposta si trova nel codice della funzione, e non ha senso scavare più a fondo...
Beh, ho un database, non c'entra niente. Natalya ha scritto in modo logicamente corretto. E anche nel caso in cui abbiamo 30 barre, il valore dell'indice dell'array1 è 120. Corrispondentemente, il valore dell'indice corrispondente dell'array2 è già dichiarato come 10 durante l'inizializzazione.
https://docs.mql4.com/ru/array/ArrayCopy
In un libro C ho letto che:
Il linguaggio C non controlla l'overrun dell'array, il che significa che tecnicamentepotetescrivere qualcosa in un elemento con un indice inesistente, per esempio in A[345] o in A[-12].Ma così facendo cancellerete qualche cella della memoria non appartenente all'array, quindile conseguenze di tale passo sono imprevedibili e il programma si blocca in molti casi.
Risulta che l'indice dell'array1(l'array di origine) è maggiore dell'indice corrispondente dell'array2 (l'array di destinazione). E di conseguenza non si dovrebbe fare così! Questo è quello che volevo dire...
Ciao a tutti!
Ho provato a scrivere il mio primo EA :-), ma sono sorte alcune difficoltà.
La logica dietro è la seguente, c'è un indicatore che mostra il massimo e il minimo delle ultime n barre, quando rompe un massimo o un minimo si dovrebbe aprire un ordine.
Quando attacco l'EA al grafico, apre una posizione SELL. Non so perché succede così.
Penso che l'errore sia nella funzione iCustom(), che invia i parametri dell'indicatore.
Ho allegato l'EA e l'indicatore.
Ciao a tutti!
Ho provato a scrivere il mio primo EA :-), ma sono sorte alcune difficoltà.
La logica dietro è la seguente, c'è un indicatore che mostra il massimo e il minimo delle ultime n barre, quando rompe un massimo o un minimo si dovrebbe aprire un ordine.
Quando attacco l'EA al grafico, apre una posizione SELL. Non so perché succede così.
Penso che l'errore sia nella funzione iCustom(), che invia i parametri dell'indicatore.
Ho allegato l'Expert Advisor e l'indicatore.
Non si riempie l'indice 0 degli array di indicatori,
ma vi si accede:
È un po' (strutturalmente) scomodo, ma va bene per la prima volta. Il mio consiglio: "Abituatevi subito ad approcci corretti alla scrittura del codice. Per esempio, usando questa condizione nel tuo codice:
È analfabeta, perché prima o poi, si passa dal tester al trading online, e ci sono diversi Expert Advisors che lavorano in parallelo, e questo codice non funzionerà.Ed ecco l'indicatore.
Qual è il vostro problema con iHighest() e iLowest()?