deimosaffair

BarUpDn time limited

trying to understand strategies, it appears that there is a lot of black magic in how a strat works behind the scenes.
anyway, it's hard to analyse what's all the data with one gazillion entries, and i wanted to know how we can manipulate/do stuff with a chart.

so, i needed to know how to "give" the script my values to work on. bundled two wants/needs into one , and created a script that only applies a strategy from the date given onwards.

how to use:
at the chart, go to the "format" little button, then the input tab, and there is all the date fields i created. fun to set it to the current date, then start going backwards and see all the little arrows filing up the chart :)
Script open-source

Dans le plus pur esprit de TradingView, l'auteur de ce texte l'a publié en open-source, afin que les traders puissent le comprendre et le vérifier. Bravo à l'auteur ! Vous pouvez l'utiliser gratuitement, mais la réutilisation de ce code dans une publication est régie par les règles internes. Vous pouvez le mettre en favori pour l'utiliser sur un graphique.

Vous voulez utiliser ce script sur un graphique ?
//@version=2
strategy("BarUpDn time limited", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 10)

//input boxes for the limit date
yearLimit = input(2016,title="year") 
monthLimit = input(1, title="month")
dayLimit = input(1, title="day")

//function that checks if the current date is more recent than the limit
dateOk(yl,ml,dl) =>
    ok = (year < yl) ? false : (yl == year and month < ml ) ? false : (yl == year and ml == month and dayofmonth < dl) ? false : true
    ok
    
    
//applies dumb prebuilt strat limited to the date
if (dateOk(yearLimit,monthLimit,dayLimit) and (close > open and open > close[1]) )
    strategy.entry("BarDn", strategy.short)
if (dateOk(yearLimit,monthLimit,dayLimit) and (close < open and open < close[1]) )
    strategy.entry("BarUp", strategy.long)

Commentaires

How exactly does this strategy make an entry decision? Is it based on gapping? Because surely the open should be equal to the previous candles close price?
Répondre
@DomHall, not important, i was just fooling with strategy syntax, got one of the builtin examples, and the conditions prety much make no sense. you could try close > close, just to make the strat fire. as it says in the comments //applies dumb prebuilt strat limited to the date

the point was to make a strategy start from the date i choose, not from the first bar. but then again, this thing has 60% correct hits, and it's turning a profit, so it lloks like i done a "killer strat" just by pure chance :D
Répondre
DomHall deimosaffair
Okay, cool. The other way to do it is to write:

is_date_valid = time > timestamp(2016, 09 , 11, 0, 1)
if is_date_valid and (close > open and open > close) )
strategy.entry("BarUp", strategy.long)

Just another way that someone taught me. It's annoying that the strategy tester maxes out at 2000!
Répondre
hey, thanks for the timestamp tip, makes it more clear :)

and btw, what's that 2000 you refer? it's bars, trades, somethign else?
Répondre
DomHall deimosaffair
No worries. Yeah, at the moment if you have a strategy that gives more than 2000 trade signals in any given period it won't allow you to test it. But using the timestamp feature resolves this anyway! You only need around 100 trades to know if a strategy is in any way good.
Répondre
ntradeden deimosaffair
@deimosaffair, applying the same strategy in python is not yielding the same result.
Répondre
Accueil Screener d'actions Screener Forex Screener Crypto Calendrier économique A propos Caractéristiques du graphique Prix Parrainer un ami Règles de conduite Centre d'aide Solutions site web & courtier Widgets Solutions de cartographie Bibliothèque de graphiques allégés Blog & News Twitter
Profil Paramètres du Profil Compte et Facturation Amis référés Coins Mes tickets au support Centre d'aide Messages privés Chat Se Déconnecter