Supertrend segnale trading system
Collapse
X
-
Salve,
le inviamo il file del Signal corretto via email, le entrate Long sono attive dalle 8:00 alle 20:00, le entrate Short sono attive dalle 8:00 alle 21:00.
Il Signal è criptato in modo da essere certi che lo script sia quello con le correzioni.
Se dovesse trovare di nuovo il problema per favore ci invii un salvataggio del Report della strategia, che può ottenere cliccando sul pulsante "Report" nella sidebar di beeTrader, e poi File -> Save nella nuva finestra beeAnalyzer.
Grazie
Max FrancarioComment
-
ok grazie, quindi non è editabile per modificare gli orari?Salve,
le inviamo il file del Signal corretto via email, le entrate Long sono attive dalle 8:00 alle 20:00, le entrate Short sono attive dalle 8:00 alle 21:00.
Il Signal è criptato in modo da essere certi che lo script sia quello con le correzioni.
Se dovesse trovare di nuovo il problema per favore ci invii un salvataggio del Report della strategia, che può ottenere cliccando sul pulsante "Report" nella sidebar di beeTrader, e poi File -> Save nella nuva finestra beeAnalyzer.
Grazie
Max Francario
GrazieComment
-
Comment
-
Ti rispondo io perchè Max è impegnato: di sbagliato c\'era solo che mancavano le virgole che separavano gli inputs (solo negli ultimi tre)
Ma ha fatto ilfile protetto per verificare che in nessun mdo venga sovrascritto tramite software. Quindi per favore fai girare quello che ti ha inviato e fai pure le prove con i tuoi orari mettendo le virgole tra un inputs e l\'altro.
Grazie..se corri dietro a due lepri, non ne prendi nemmeno una.Comment
-
quante volte è andato a buon fine il supertrend
Mi allaccio a questa discussione sul supertrend perchè credo potrebbe essere utile ...
Sto lambiccandomi il cervello per trovare il modo di creare un indicatore che mostri quante volte il supertrend ha guadagnato x% ma non ci riesco e non so se sia possibile.
In pratica riferendomi ai supertrend long , lo script in linguaggio simil umano sarebbe :
conta quante volte si è verificata la condizione seguente
(
cerca indietro nelle barre l\'ultima volta di un supertrend short (LASTIF( CROSSUNDER(@price, SimpleSuperTrend(@STperiods, @ATRmul)))
ora da qui cerca ancora indietro il massimo più alto fino alla barra che ha dato supertrend long
controlla se questo massimo è superiore del close della barra che ha dato supertrend long di x%
)
Il \'conta quante volte\' è sicuramente un COUNTIF() ma la condizione dopo mi sembra difficile scriverla anche perchè il COUNTIF() credo non accetti il nesting.
Qualcuno ha idea? E soprattutto si può fare ?Io non vendo tasti ! - Tiziano Cagalli
...quindi se c'è un tasto (su Fiuto) vuol dire che serve !!Comment
-
Salve,
Il risultato che vuole ottenere è qualcosa di simile a questo esempio ?Mi allaccio a questa discussione sul supertrend perchè credo potrebbe essere utile ...
Sto lambiccandomi il cervello per trovare il modo di creare un indicatore che mostri quante volte il supertrend ha guadagnato x% ma non ci riesco e non so se sia possibile.
In pratica riferendomi ai supertrend long , lo script in linguaggio simil umano sarebbe :
conta quante volte si è verificata la condizione seguente
(
cerca indietro nelle barre l\'ultima volta di un supertrend short (LASTIF( CROSSUNDER(@price, SimpleSuperTrend(@STperiods, @ATRmul)))
ora da qui cerca ancora indietro il massimo più alto fino alla barra che ha dato supertrend long
controlla se questo massimo è superiore del close della barra che ha dato supertrend long di x%
)
Il \'conta quante volte\' è sicuramente un COUNTIF() ma la condizione dopo mi sembra difficile scriverla anche perchè il COUNTIF() credo non accetti il nesting.
Qualcuno ha idea? E soprattutto si può fare ?
Max FrancarioComment
-
Intanto grazie per la risposta immediata,
no , vorrei ottenere quante volte il st ha dato x% cioè il risultato dovrebbe essere un numero .
Non quanta percentuale ha fatto ma quante volte ha fatto almeno x%.Io non vendo tasti ! - Tiziano Cagalli
...quindi se c'è un tasto (su Fiuto) vuol dire che serve !!Comment
-
Sono vicino alla soluzione che pubblicherò appena funziona ma mi sono bloccato, è possibile che HHV e LLV accettino in input solo vettori decisi a priori ma non a runtime?
Mi spiego ... ho scritto questo indicator che dovrebbe disegnare un istogramma ogni volta che un semplice supertrend long dia un segnale da 5%:
INPUTS: @price(CLOSE), @ST1periods(10), @ATR1mul(3), @percent1(5)
SET st1 = SimpleSuperTrend(@ST1periods, @ATR1mul)
SET NCandl = LASTIF( @price <= st1 )
SET NCandlong = REF(NCandl,1)
SET cambio = CROSSUNDER(@price, st1)
# NCandlong è il numero di candele che è durato l\'ultimo supertrend long nel momento in cui \'cambio\' è vera
SET high1 = IF( cambio , HHV(NCandlong), 0 )
#questa è l\'istruzione che mi da problemi, dovrebbe trovare l\'highest delle ultime NCandlong candele ma invece non fa nulla
SET inst = REF(@price, NCandlong)
# inst mi da il valore del CLOSE appena scatta il supertrend long
SET revenue = (100*(high1-inst)/inst)
SET cond = (revenue >= @percent1)
SET PLOT1 = cond
dovrebbe funzionare (disegnare un istogramma ogni volta che il supertrend va a target) ma non funziona!
Se invece nella riga incriminata scrivo:
SET high1 = IF( cambio , HHV(@numero), 0 )
con @numero messo tra gli input (ad esempio 10) , allora funziona ... ma non fa quello che dovrebbe naturalmente !
Poi l\'altro problema sarebbe sommare tutte le volte che è uscito un istogramma, ma penso che trasformando il signal in una funzione poi i giochi sono fatti, basta fare un sum o una media o altro.
Comunque la domanda è appunto: è possibile che HHV e LLV accettino in input solo vettori decisi a priori ma non a runtime?
E nel caso si può ovviare al problema?Io non vendo tasti ! - Tiziano Cagalli
...quindi se c'è un tasto (su Fiuto) vuol dire che serve !!Comment
-
Salve,
può usare le funzioni MAX(@vector, @periods) e MIN(@vector, @periods) che operano su qualsiasi variabile al posto di HHV(@periods) ed LLV(@periods) che operano esclusivamente su HIGH e LOW rispettivamente.
Inoltre, siccome il numero di periodi calcolato come nel suo esempio potrebbe valere zero, questo porta a generare una condizione di errore nel calcolo di MAX/MIN/HHV/LLV.
Può aggiungere una riga del tipo:
SET hhPeriods = IF(NCandlong > 0, NCandlong, 1)
ed usare hhPeriods come numero di periodi in MAX/MIN/HHV/LLV.
Max FrancarioLast edited by Francario Massimiliano; 20-10-21, 10:51.Comment
-
Ottimo grazie mi pare che funzioni tutto, appena ho finito anche la parte short la posto !Salve,
può usare le funzioni MAX(@vector, @periods) e MIN(@vector, @periods) che operano su qualsiasi variabile al posto di HHV(@periods) ed LLV(@periods) che operano esclusivamente su HIGH e LOW rispettivamente.
Inoltre, siccome il numero di periodi calcolato come nel suo esempio potrebbe valere zero, questo porta a generare una condizione di errore nel calcolo di MAX/MIN/HHV/LLV.
Può aggiungere una riga del tipo:
SET hhPeriods = IF(NCandlong > 0, NCandlong, 1)
ed usare hhPeriods come numero di periodi in MAX/MIN/HHV/LLV.
Max FrancarioIo non vendo tasti ! - Tiziano Cagalli
...quindi se c'è un tasto (su Fiuto) vuol dire che serve !!Comment
-
Allora questo indicatore funziona e mostra sul grafico tutte le volte che il supertrend è andato al target prefissato, inoltre mostra anche quanto avrebbe potuto ottenere al massimo, diviso tra trend short e trend long:
INPUTS: @price(CLOSE), @ST1periods(10), @ATR1mul(3), @percent1(5)
SET st1 = SimpleSuperTrend(@ST1periods, @ATR1mul)
SET NCands = LASTIF( @price >= st1 )
SET NCandshort = REF(NCands,1)
SET NCandl = LASTIF( @price <= st1 )
SET NCandlong = REF(NCandl,1)
SET cambiol = CROSSOVER(@price, st1)
SET llPeriods = IF(NCandshort > 0, NCandshort, 1)
SET cambioh = CROSSUNDER(@price, st1)
SET hhPeriods = IF(NCandlong > 0, NCandlong, 1)
SET low1 = IF( cambiol , MIN(@price,llPeriods), 1 )
SET high1 = IF( cambioh , MAX(@price,hhPeriods), 1 )
SET insts = REF(@price, llPeriods)
SET revenues = IF(low1>2, 100*(insts-low1)/insts,0)
SET conds = revenues >= @percent1
SET instl = REF(@price, hhPeriods)
SET revenuel = IF(high1>2, 100*(high1-instl)/instl,0)
SET condl = revenuel >= @percent1
SET PLOT1 = condl*@percent1
SET PLOT2 = revenuel
SET PLOT3 = conds*@percent1
SET PLOT4 = revenues
però ora vorrei farne una funzione da poter utilizzare in altri script e qui ho problemi
.... prossimo post
Io non vendo tasti ! - Tiziano Cagalli
...quindi se c'è un tasto (su Fiuto) vuol dire che serve !!Comment
-
funzione non funzionante!
la funzione è:
INPUTS: @price(CLOSE), @ST1periods(10), @ATR1mul(3), @percent1(5)
SET st1 = SimpleSuperTrend(@ST1periods, @ATR1mul)
SET NCands = LASTIF( @price >= st1 )
SET NCandshort = REF(NCands,1)
SET NCandl = LASTIF( @price <= st1 )
SET NCandlong = REF(NCandl,1)
SET cambiol = CROSSOVER(@price, st1)
SET llPeriods = IF(NCandshort > 0, NCandshort, 1)
SET cambioh = CROSSUNDER(@price, st1)
SET hhPeriods = IF(NCandlong > 0, NCandlong, 1)
SET low1 = IF( cambiol , MIN(@price,llPeriods), 1 )
SET high1 = IF( cambioh , MAX(@price,hhPeriods), 1 )
SET insts = REF(@price, llPeriods)
SET revenues = IF(low1>2, 100*(insts-low1)/insts,0)
SET conds = revenues >= @percent1
SET instl = REF(@price, hhPeriods)
SET revenuel = IF(high1>2, 100*(high1-instl)/instl,0)
SET condl = revenuel >= @percent1
SET stok = (conds OR condl)
ed è compilata però ....
.... se la volessi utilizzare ad esempio così (per avere un grafico incrementale dei supetrend andati bene):
INPUTS: @price(CLOSE), @ST1periods(10), @ATR1mul(3), @percent1(5)
SET a = stok(@price, @ST1periods, @ATR1mul, @percent1)
SET somma = COUNTIF(a)
PLOT1 = a
il compilatore mi da errore e mi dice che lo script ha una condizione da valutare e questo non va bene!!
Non capisco perche !Io non vendo tasti ! - Tiziano Cagalli
...quindi se c'è un tasto (su Fiuto) vuol dire che serve !!Comment


Comment