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
Dichiarazione aggiornata.
Quasi raddoppiato il capitale in una settimana.
v1.60
Cambierò la dimensione del lotto a 2 d'ora in poi.
Schermo di ATR_normalizzato
Igor ho dimenticato di allegare lo schermo dell'ATR_normalizzato alla risposta sopra. Eccolo qui.
Ciao,
Ho provato a creare l'ATR normalizzato ma penso che non sia un compito così semplice.
Quindi puoi provare a giocare con gli input.
Igor
PS. Scusa ma il bug era nel codice. Corretto.Igor, grazie mille per l'ATR normalizzato. Sembra buono, con l'eccezione che non va mai sotto 30 (scala 0-100). Se guardi la schermata allegata vedrai l'iATR andare a 0 mentre l'ATR_normalizzato rimane intorno a 35. In tutti i casi in cui iATR raggiunge lo zero anche solo per un po', ATR_normalized rimane sopra il 30. Potete risolvere il problema, per favore? Inoltre non sarebbe più facile da creare usando iATR e iMA nativi? Forse sarebbe più facile e posso semplicemente usare il codice in CT come filtro.
Ciao,
prova questo. Deve andare bene.
Ciao, prova questo. Deve essere OK.
Ok, proverò questo. Inoltre, sono stato in grado di fare questo molto semplicemente:
doppio normATR=0;
double maxATR=iATR(Symbol(),Period(),14,0);
int i;
for(i=1;i<14;i++)
{
se(iATR(Simbolo(),Periodo(),14,i)>maxATR)
{
maxATR=iATR(Simbolo(),Periodo(),14,i);
}
}
normATR=(iATR(Symbol(),Period(),14,0)/maxATR)*100;
Anche questo sembra funzionare bene. Grazie per il tuo aiuto!
Sto testando l'ultima versione in questo momento e ho trovato alcuni bug, quindi per favore aspettate gli aggiornamenti.
Igor, puoi postare la tua versione con le correzioni per il PIP Timer? Non funziona correttamente nella forma attuale. Avvia il PIPcounter all'entrata ed esce dopo che il tempo è scaduto, indipendentemente dal profitto ottenuto. Si prega di testare sui tick invece che sui secondi poiché il conteggio dei secondi è asincrono con i tick che entrano. Grazie per il vostro contributo.
Ecco di nuovo le specifiche e anche il codice che ho finora come l'hai scritto originariamente con poche modifiche:
1. Se EnablePIPTimer=true;
2. Quando MinPIPProfit >=X attiva TakePIPCountdown (SET to Input TakePipTimer). Questo inizia a contare alla rovescia fino a 0 in tick.
3. TakePIPCountDown conta alla rovescia: 60, 59, 58..ticks ecc.
4. Dichiarare la variabile globale double BestPIPProfit=0; questa contiene il miglior profitto PIP che la posizione ha raggiunto finora.
5. Fare in modo che BestPIPProfit=MinPIPProfit inizialmente;
6. Ottieni BestPIPProfit=profitto PIP attuale
7. Se BestPIPProfit > MinPIPProfit fai MinPIPProfit = BestPIPProfit (questo sarà il profitto minimo del PIP aggiornato d'ora in poi per questa posizione aperta).
8. Quando la condizione #7 si verifica, riavvia TakePIPCountDown al valore iniziale (TakePipTimer) e lo abilita al conteggio... conta di nuovo 60, 59, 58 tick ecc. fino a 0 con il nuovo MinPIPProfit floor.
9. Una volta che il TakePIPCountDown raggiunge lo 0 CHIUDI l'ordine aperto immediatamente.
10. Se il profitto attuale del PIP scende sotto MinPIPProfit fermare TakePIPCountDown (e ripristinare il valore originale di TakePipTimer) fino a quando il profitto attuale è di nuovo >= MinPIPProfit (il piano più alto raggiunto) durante questa esecuzione
CODICE:
int CheckTakeProfitTimer()
{
double _point = MarketInfo(OrderSymbol(),MODE_POINT);
doppio PipProfit = 0;
se (EnablePipTimer==true)
{
for (int cnt=0;cnt<OrdersTotal();cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
int mode=OrderType();
if ( OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber)
{
se (mode==OP_BUY)
PipProfit = MathRound((Bid - OrderOpenPrice())/_point); // Calcola il profitto/perdita di apertura per BUY
altrimenti
se (mode==OP_SELL)
PipProfit = MathRound((OrderOpenPrice()-Ask)/_point); // Calcola profitto/perdita aperta per VENDERE
MaxPipProfit = MathMax(PipProfit,MaxPipProfit); // Ottieni il maggior profitto, attuale o massimo durante la negoziazione
if (MaxPipProfit >= BestPipProfit) // controlla se è stato raggiunto il profitto PIP minimo
{
if (!StartCount1 || ( StartCount1 && BestPipProfit > MinPipProfit)) // nessun conteggio in corso e profitto PIP minimo raggiunto
{
BestPipProfit=MaxPipProfit; // ripristina il massimo profitto attuale raggiunto finora
TimerStart1 = CurTime()/1000; // congela il tempo corrente
TakePipCountDown = TakePipTimer; // inizializza il contatore al valore impostato
StartCount1=true; // avvia il contatore
}
else
if (TimerType == 0) // conteggio in corso..conta secondi o tick
{
TakePipCountDown = TakePipTimer - (CurTime()/1000 - TimerStart1); // opzione scelta è il conteggio dei secondi
}
else
{
TakePipCountDown--; // L'opzione scelta è il conteggio dei Tick
}
} // se (MaxPipProfit..
}// if (Ordine...
} // per
} // in EnablePipTimer
Corretto il mancato trading in CT 1.85
Mi dispiace gang...c'era un bug nella 1.85 che impediva a CT 1.85 di fare trading dopo le ore di cattivo trading. L'ho risolto per ora fino all'uscita della nuova versione e l'ho chiamata 1.85f (fixed). Per favore usate questa versione con i preset 1.85 postati originariamente. Questa è identica alla 1.85 e contiene solo la correzione per il mancato trading. Avremmo dovuto accorgercene prima.
Mi dispiace banda...c'era un bug nella 1.85 che impediva a CT 1.85 di fare trading dopo le ore di cattivo trading. L'ho risolto per ora fino all'uscita della nuova versione e l'ho chiamata 1.85f (fixed). Per favore usate questa versione con i preset 1.85 postati originariamente. Questa è identica alla 1.85 e contiene solo la correzione per il mancato trading. Avremmo dovuto accorgercene prima.
Non riuscivo a capire come tutti gli altri ottenessero risultati così favolosi ma io non ricevevo quasi nessun ordine!
Ciao,
Ho sviluppato un PipTimerExpert separato. Questo esperto può gestire il commercio secondo la tecnica descritta da fxspeedster. Questa versione include un contatore di secondi e tick. Puoi usarlo per CyberiaTrader.
Ciao, ho sviluppato un PipTimerExpert separato. Questo esperto può gestire il commercio secondo la tecnica descritta da fxspeedster. Questa versione include un contatore di secondi e tick. Puoi usarlo per CyberiaTrader.
Igor, grazie per il tuo grande lavoro. Sto includendo questo codice e lo sto testando. Sei il migliore!