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
.
Comunque, stavo cercando di fare in modo che i frattali alti si formino solo quando si verifica un'altra condizione come gli incroci di iMACD, o gli incroci di EMA o qualche altro indicatore.
In modo che i frattali vengano visualizzati sull'indicatore solo quando tutte le condizioni sono soddisfatte.
Non ero sicuro di quello che stavate cercando di fare, ma provate questo, notate gli ingressi esterni.
Esattamente come sei arrivato a questa conclusione e qual è la differenza funzionale?
Sono arrivato a questa conclusione, perché probabilmente, stavo guardando da prospettive OOP. sì, questo non è vero per il caso di MQL4, ora ricordo. Anche se può essere una buona pratica?
O forse qualcosa del genere?
dovresti davvero usare IndicatorCounted(), perché se lo fai così il tuo indicatore sta ridisegnando tutti quegli oggetti ad ogni nuovo tick invece di disegnarli tutti una sola volta e aggiungerne di nuovi quando si formano nuove barre
Sono arrivato a questa conclusione, perché probabilmente, stavo guardando da prospettive OOP. sì, questo non è vero per il caso di MQL4, ora ricordo. Anche se può essere una buona pratica?
È sempre una buona pratica limitare l'ambito. è sempre una buona pratica definire la variabile/oggetto dove viene usata e inizializzarla a quel punto.
La definizione di un oggetto al di fuori del ciclo si traduce in una costruzione predefinita più N assegnazioni. Definito all'interno del ciclo risulta in N costruzioni con valore - di solito più veloce.
Non preoccupatevi mai delle ottimizzazioni finché non potete dimostrare che il cambiamento fa la differenza.
È sempre una buona pratica limitare l'ambito. è sempre una buona pratica definire la variabile/oggetto dove viene usata e inizializzarla in quel punto.
La definizione di un oggetto al di fuori del ciclo si traduce in una costruzione predefinita più N assegnazioni. Definito all'interno del ciclo risulta in N costruzioni con valore - di solito più veloce.
Non preoccupatevi mai delle ottimizzazioni finché non potete dimostrare che il cambiamento fa la differenza.
Questo dovrebbe applicarsi anche al suo iteratore. for (int i=0;. ..
Anche se sono leggermente confuso sul perché la dichiarazione delle variabili (più veloce e più lenta) fuori dal ciclo non va bene mentre va bene dentro il ciclo
E ancora l'int i = Bars funzionerà fuori dal ciclo o dentro il ciclo?
Comunque è bello vedere che alcune delle mie idee su cui stavo lavorando sono già state postate in questo thread, quindi questa è una buona notizia e significa che mi sto avvicinando un po' di più al fatto che un giorno sarò in grado di scrivere qualcosa per conto mio. Quindi un piccolo progresso è meglio di niente. Grazie
Così ora posso lavorare sul confronto di alcuni dei tempi dell'indicatore, cercherò di capire questo ora.
Ad esempio:
Confronta v1[i] a v2[i] Indicatore attualmente formato Tempi && / || if(v1[i] tempo è > v2[i] tempo) e altri confronti come questo.
Grazie per tutti i suggerimenti, è stato di grande aiuto.
È sempre una buona pratica limitare l'ambito. è sempre una buona pratica definire la variabile/oggetto dove viene usata e inizializzarla in quel punto.
La definizione di un oggetto al di fuori del ciclo si traduce in una costruzione predefinita più N assegnazioni. Definito all'interno del ciclo risulta in N costruzioni con valore - di solito più veloce.
Non preoccupatevi mai delle ottimizzazioni finché non potete dimostrare che il cambiamento fa la differenza.
Ok, mi sembra di avere alcune variazioni di un codice funzionante ora, grazie.
Anche se sono leggermente confuso sul perché la dichiarazione delle variabili (più veloce e più lenta) al di fuori del ciclo non va bene mentre va bene all'interno del ciclo
E ancora l'int i = Bars funzionerà fuori dal ciclo o dentro il ciclo?
Devi considerare cosa stai facendo, quando crei un indicatore stai applicando il tuo codice ad ogni singola barra del grafico, questo significa che hai bisogno di ottenere il valore dell'indicatore macd come era per ognuna di quelle barre storiche.
Nel tuo codice originale l'hai fatto:
l'ultimo parametro 1 è il valore del macd come era alla barra 1 del grafico, la barra precedente a quella attuale che è indicizzata come barra 0Ovviamente non vuoi usare quel singolo valore del macd nel tuo operatore condizionale su tutto il grafico storico.
Hai bisogno di indicizzare il macd allo stesso indice di barra di ogni barra, quindi per esempio alla barra 500 hai bisogno di questo
l'ultimo parametro deve cambiare per corrispondere al numero della barra a cui il tuo indicatore sta applicando i suoi algoritmi.
Questo è il motivo per cui ne hai bisogno all'interno del ciclo, così puoi usare l'iteratore del ciclo del ciclo ( i ) per l'ultimo parametro e quindi ottieni il tuo valore macd come era per ogni barra del grafico storico.
Spero che questo aiuti a chiarire un po' le cose.
Prova questo cambiamento
E perché questo è meglio di for(int i = Bars?
Si prega di consigliare grazie