Usually, signals are considered to be valid at the bar close.
Some traders may prefer to have a chance to enter earlier.
It is of great risk, and the Strategy Tester is unable to provide consistent backtest data with regards to this.
But for those who want to integrate such a choice in their strategies, here is the Early Signal Function.
The function takes 2 parameters
- the signal that is considered valid at the bar close, of type bool
- the early time value in seconds, the time before the signal is valid, of type int
it returns a value of type bool - a New Entry Signal
The resulting conditions used for alerts would be:
- newLongCondition = earlySignal_f(myLongSignal, earlyTime)
- newShrtCondition = earlySignal_f(myShrtSignal, earlyTime)
Note: the signals can also be delayed - use a negative value for early time
a Discord bot for Charting (TradingView and Heatmaps) is available
🟣 If you like any of my Invite-Only Tools, let me know 😆
The time based alerts might not always fire, unlike the bar based ones.
It also depends on your signal conditions.
Note: make sure your alerts aren't too spammy, or they'll get paused.
Test against your signals (this fires once per bar on every bar, so it's easy to test), switch to 1h chart timeframe and create the alert:
alertcondition(earlySignal_f(true,14), title='Early Signal 14s', message='Early Signal 14s')
You can also use your signal as a backup, in case the Early Signal doesn't work:
alertcondition(earlySignal_f(mySignal,14) or mySignal, title='Early Signal 14s + backup', message='Early Signal 14s + backup')
I run the script as a test and it did not "shoot" an alert.
I then out a plotshape lines to see if the "early Buy/early Sell" would trigger but they did not.
Amm I using it incorrectly and if so how do you use it?
you can test the script as it is. Add to chart > create alert > wait.
TradingView allows continuous alerts (the option is "Every Time"), but for simple conditions.
For scripts, the current TradingView limitation is that it can fire once per interval (the option is "Once Per Bar").
I'm collating a list of useful functions if you fancy adding any..