Is the speed getting faster or slower?
Acceleration will be the answer, acceleration is defined as the of speed over a set period of time, meaning something is getting faster or slower. Mathematically expressed, acceleration denoted as a is a = Δv / Δt , where Δv is the change in speed and Δt is the change in time.
How to apply in trading
Lets think about Momentum, Rate of Return, all are calculated in almost same approach with Speed
Momentum measures change in price over a specified time period,
measures percent change in price over a specified time period,
Rate of Return measures the net gain or loss over a specified time period,
And Speed measures change in distance over a specified time period
So we may state that measuring the change in distance is also measuring the change in price over a specified time period which is length, hence
speed can be calculated as (source – source)/length and acceleration becomes (speed – speed)/length
In this study acceleration is used as signal line and result plotted as arrows demonstrating bull or bear direction where direction changes can be considered as trading setups
Just a little fun, since we deal with speed the short name of the study is named after famous cartoon character Speedy Gonzales
Trading success is all about following your trading strategy and the indicators should fit within your trading strategy, and not to be traded upon solely
Disclaimer: The script is for informational and educational purposes only. Use of the script does not constitutes professional and/or financial advice. You alone the sole responsibility of evaluating the script output and risks associated with the use of the script. In exchange for using the script, you agree not to hold dgtrd TradingView user liable for any possible claim for damages arising from any decision you make based on use of the script
1-momentum acceleration concept applied to On Balance Volume to add insight for volume changes
2-volume histogram added
3-alert condition added
enhanced to a non-repaint version
non-repaint version made optional (default repaint version)
many many thanks for your highly valuable comments @sotiri 🙏
1-) Historical Data Evaluation
in the real-time processing when the condition is satisfied to avoid repainting the signals are presented on the next bar, this feature was already available with this study
change implemented with this update is to made historical data evaluation behavior same as real-time behavior and all plottings, statistical panel calculations are performed based on the next bar
- traders will observe the same behavior both in real-time and in historical bars (even when the study is reloaded)
- trade statistics will display whatever the user traded on the real-time bars with the signals generated
- since the signals are generated on the next bar, “Entry/Exit Price Assumption” input necessity is no longer required, trades with the backtest framework will be assumed as open price on the next candle
2-) Early Warning : Alert + Label
As a rule as explained above, signals are triggered on the next bar in case the condition is still valid and the logic of the study is already aware of the likelihood of an signal occurrence on the next bar but the trader who is analyzing the chart is not (according to this study’s logic of course). So to increase the awareness, with this update ;
- a label with a warning sign is going to be plotted which of course is subject to repaint but will warn the trader to keep eyes closer on the instrument and proceed trading immediately on the next bar if the signal is confirmed and presented on the chart.
- for the same warning also an alert is defined (using new alert() function call), so the trader will be able to be notified with the probable not yet confirmed trade opportunity in advance, even if the trader is not monitoring the instrument.
Having said that, I would like to remind : Trading success is all about following your trading strategy and the indicators should fit within your trading strategy, and not to be traded upon solely.
3-) Improved Conditions
Avoid Sudden Price Changes : Since the long/short conditions are triggered on next bar there might be cases where a sudden change in price direction and hence signal change may occur especially in sideway market conditions with low volatility, this option is to avoid such cases
Candle Direction as Confirmation : confirms signal if the candle formation is in favor of the trade
Please note : selecting the above options will cause the signals to be executed on the second bar so to have the study non-repaint. For test purposes only you may enable "❗❗❗ Simulate Trade on Next Bar : Only For Test Purpose (REPAINTS)" option to simulate the trade on the next bar.
Important note : stop loss condition will be executed when price fall below the calculated value and trade will be closed with the close price on bar close (not yet able to get the price value at the moment of the cross). Stop loss condition is subject to repainting and to avoid any further loss an alert can be triggered at the moment the first cross is observed. Since stop loss is subject to repaint and in case it happens the statistical panel calculation will not be able to calculate till the bar is closed. You may disable application of stop loss from user dialog box to avoid any inconsistency that may appear on statistical panel and observe results of the trades executed without stop loss.
Other updates in Study
• Enhanced Alerts setup to have two alerts settings for bull condition and two for bear condition, one with the repaint version (early warning) and one non-repaint version (on the next bar if still condition holds true).
قام مؤلف هذا النص البرمجي بنشره وجعله مفتوح المصدر، بحيث يمكن للمتداولين فهمه والتحقق منه، وهو الأمر الذي يدخل ضمن قيم TradingView. تحياتنا للمؤلف! يمكنك استخدامه مجانًا، ولكن إعادة استخدام هذا الكود في منشور تحكمه قواعد الموقع. يمكنك جعله مفضلاً لاستخدامه على الرسم البياني.
comm = input(8., "", step=1., minval = 0) /10000
//Commissions included in calculations
entryPrice := open + open*(comm)
exitPrice := stopLossCondition ? (close - close*(comm)) : (open - open*(comm))