Multichart problema con codice signal

  • Ecco la 66° Edizione del settimanale "Le opportunità di Borsa" dedicato ai consulenti finanziari ed esperti di borsa.

    I principali indici azionari hanno vissuto una settimana turbolenta, caratterizzata dalla riunione della Fed, dai dati macro importanti e dagli utili societari di alcune big tech Usa. Mercoledì scorso la Fed ha confermato i tassi di interesse e ha sostanzialmente escluso un aumento. Tuttavia, Powell e colleghi potrebbero lasciare il costo del denaro su livelli restrittivi in mancanza di progressi sul fronte dei prezzi. Inoltre, i dati di oggi sul mercato del lavoro Usa hanno mostrato dei segnali di raffreddamento. Per continuare a leggere visita il link

mesmenat

Nuovo Utente
Registrato
8/3/06
Messaggi
741
Punti reazioni
53
buongiorno a tutti.

sto provando ad inserire questo semplice codice che dice:

quando incrocia al rialzo sma 30 sopra sma 90 prendiamo come riferimento il massimo delle 30 candele precedenti all'incrocio che se viene poi rotto al rialzo da segnale long, viceversa per lo short.

ho verificato che non sempre le 30 candele precedenti all'incrocio vengono rispettate, mando un esempio tf 5 min.

cosa c'è di sbagliato nella formula??

grazie a chi mi aiuterà.


codice:

value1=average (c,30);
value2=average (c,90);

condition1= value1>value2 ;
condition2=value1<value2;

condition3=H crosses over Highest(h,30)[1];
condition4=L crosses under Lowest(l,30)[1];

if condition1 and condition3 then buy next bar at market;
if condition2 and condition4 then sellshort next bar at market;
 

Allegati

  • 10.jpg
    10.jpg
    170,9 KB · Visite: 16
Ti dà un segnale short perchè le condizioni sono verificate: if condition2 and condition4 then sellshort next bar at market;
il value1 (linea verde) è minore del value2 (linea rossa) inoltre il minimo precedente alla candela che ha generato l'ingresso è effettivamente il più basso dei low delle ultime 30 candele.

Noto una discordanza tra quanto scrivi e il codice. Scrivi: "quando incrocia al rialzo sma 30 sopra sma 90 ...."
Scrivere "condition1= value1>value2 ;" non equivale a quanto detto sopra ma semplicemente a verificare che un valore sia maggiore si un altro.
L'incrocio lo hai scrivendo: condition1= value1 crosses above value2 ;
Identica cosa per la condition2.

Inoltre ricorda che hai due condizioni molto selettive: incrocio di medie E max/min assoluto delle ultime 30 candele. Se quando incrociano le medie i prezzi non sono sui max/min delle ultime 30 barre, dovrai aspettare un nuovo incrocio.
Credo che i segnali siano piuttosto rarefatti.
Ciao
 
Indietro