Volume Supertrend AI

Volume Supertrend AI

Overview of the Volume SuperTrend AI Indicator

The Volume SuperTrend AI Indicator is a cutting-edge technical tool designed for forecasting price movement trends by integrating traditional SuperTrend calculations with artificial intelligence techniques, notably the k-nearest neighbors (KNN) algorithm. Its purpose is to arm traders with a more accurate means of discerning market trends, combining volume-weighted moving averages (VWMA) and the KNN algorithm to deliver both bullish and bearish signals.

How It Works

– Volume Analysis:

Leveraging volume-weighted moving averages (VWMA), the Volume SuperTrend AI underscores the significance of trading volume in determining trend direction. This enables a more precise reaction to market dynamics.

– Artificial Intelligence Integration – k-Nearest Neighbors (k-NN) Algorithm:

The k-NN algorithm is utilized to intelligently assess historical data points by comparing current parameters with past data. The nearest neighbors are used to generate predictive modeling, thus adapting to complex market patterns.

Usage Guide

– Trend Identification:

The indicator evaluates not just price movements but also trading volume, adding an additional layer to trend analysis. A green line below the price usually indicates an uptrend, reflecting bullish market sentiment, whereas a red line above the price denotes a downtrend, indicative of bearish conditions.

– Trend Continuation Signals:

The AI algorithm plays a critical role in determining the coloration of the Volume SuperTrend, facilitating trend prediction while retaining the fundamental attributes of the traditional SuperTrend.

– Dynamic Trailing Stop:

The Volume SuperTrend AI indicator acts as a dynamic trailing stop loss, adjusting to both price movement and trading volume. This method safeguards profits while allowing the trade to develop, incorporating volume for a more nuanced response to market shifts.

Settings

– AI Settings:

These include adjustments for the number of nearest neighbors to consider in the k-Nearest Neighbors (k-NN) algorithm and the amount of data points to analyze. These settings influence the model’s sensitivity to market fluctuations.

– AI Trend Settings:

This allows for the customization of the lengths of the weighted moving averages used for calculating both the price trend and the prediction trend. It includes options to enable or disable AI-generated trend signals.

– SuperTrend Settings:

These settings adjust the length of the SuperTrend and the factor, which is the multiplier for the Average True Range (ATR) in the SuperTrend calculation, as well as selecting the type of moving average for the SuperTrend calculation. This customization aligns with individual trading strategies and market conditions.

This comprehensive approach to market trend prediction merges traditional technical analysis with artificial intelligence innovations, offering traders a robust tool for decision-making in their trading activities.

Share this

Risk disclosure:

No information on this site is investment advice or a solicitation to buy or sell any financial instrument. Past performance is not indicative of future results. Trading may expose you to risk of loss greater than your deposits and is only suitable for experienced investors who have sufficient financial means to bear such risk.

ProRealTime ITF files and other attachments : How to import ITF files into ProRealTime platform?

PRC is also on YouTube, subscribe to our channel for exclusive content and tutorials

  1. Gaspare • 03/04/2024 #

    Grazie Ivan
    una domanda:
    quale TF ci puoi suggerire per operare sugli indici americani CFD?

  2. Iván • 03/04/2024 #

    I personally like it in daily timeframe

  3. oliTR • 03/04/2024 #

    Many thanks Ivan,
    I copy/paste your code to try it but could only get a constant stable uniform value for the SuperTrend.
    Is anything missing in the code?
    I think the problem is coming from “vwma = average[len,maSrc](close*volume)/average[len,maSrc](volume)”
    What did you intend to write here?
    Also, what is the use of “myindex = $indices[i]”?

    • Iván • 03/04/2024 #

      Hi,
      I’ve copied the code above and it works… what asset are you trying?
      $indices array use is to be complemented with $distance array. Currently not used in the code, but if you want to know an especific $distance it could be useful.
      If you want you can delete it.

  4. Hasardeur • 77 days ago #

    Hallo Ivan,
    are you shure that line 107 “myindex = $indices[i]” myindex is correct?

  5. oliTR • 48 days ago #

    Dear Iván,
    I am trying to set this indicator in a trading system.
    However, I have some issue at the end of the first part, when your indicator evaluates ‘mysupertrend’ before collecting data points.
    If used as an indicator then it returns a proper ‘mysupertrend’ signal, but when used in a code then it does not give any value. What could be the reason for that?

    // ~~ Calculate the SuperTrend based on the user’s choice
    vwma = average[len,maSrc](close*volume)/average[len,maSrc](volume)
    atr = averagetruerange[len](close)

    upperband = vwma + factor*atr
    lowerband = vwma – factor*atr

    if barindex < len then
    upperband = close
    lowerband = close
    direction = 1
    else
    //Redefine upperband
    if upperband < upperband[1] or close[1] > upperband[1] then
    upperband = upperband
    else
    upperband = upperband[1]
    endif
    //Redefine lowerband
    if lowerband > lowerband[1] or close[1] < lowerband[1] then
    lowerdband = lowerband
    else
    lowerband = lowerband[1]
    endif
    //Define Supertrend
    prevSupertrend = mysuperTrend[1]
    if prevSupertrend = upperband[1] then
    if close > upperband then
    direction = -1
    else
    direction = 1
    endif
    else
    if close < lowerband then
    direction = 1
    else
    direction = -1
    endif
    endif
    endif

    if direction = -1 then
    mysupertrend = lowerband
    else
    mysupertrend = upperband
    endif

    • Iván • 48 days ago #

      Hi. It works… just delete drawing lines and place buy and sell conditions.
      For example, if you want to enter long/short when the arrow appears:
      if Trendup then
      //drawtext(“▲”,barindex,currentsuperTrend)coloured(r,g,b)
      buy 1 contract at market
      elsif Trenddn then
      //drawtext(“▼”,barindex,currentsuperTrend)coloured(r,g,b)
      sellshort 1 contract at market
      endif
      graphonprice currentsuperTrend as “SuperTrend” coloured(r,g,b)

  6. oliTR • 48 days ago #

    Yes, I am sure it should work perfectly, but I found very strange vehavior like this one:

    If I set these lines right after the code:

    if g=250 then
    test=1
    elsif r=250 then
    test=-1
    else
    test=0
    endif
    graph test

    and then there is non matching between the colors of the indicator and what the code gives.

    Would you see something similar?

    (sorry but I can’t find how to attach a picture)

  7. oliTR • 47 days ago #

    well,
    it seems that the issue came from my backTest period which was not long enough.
    sorry

  8. oliTR • 37 days ago #

    Dear Ivan,
    why, in line 86, there is “currentsuperTrend[i]” and not “currentsuperTrend” only?

avatar
Register or

Likes

avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar
Related users ' posts
Alai-n I also have the same problem that I can not solve especially on LowVolume (Yellow) ... Sorry
Mert No need to apologise, my friend. It is great code. I hope you find a solution soon. Regards.
gabri I think it's because the lookback period changes at every new bar and that means that many c...
Giuseppe68 ciao, ho provato l'indicatore e mi sembra interessante, ma in fase di backtest non riesco ad...
poldoposta veramente bello.....complimenti
rb-72 Thank you, area of twist by dilatacion of the price, missing part of the code that is not pu...
Thomas007 after reading your blog now I understand why there is only a part of your code here. I'm try...
Juanjo Hola¡¡ la estrategia se podria aplicar sobre acciones con marco temporal diario?? gracias.
WarningTrading Comment peut on la comparer ? comme ceci ? cela ne me donne plus le message d'erreur manque...
sally31120 Bonjour, je n'arrive pas à créer ce screener close > supertrend extended2[1] la réponse...
Nicolas voir ce sujet pour un screener basé sur Supertrend Extended: https://www.prorealcode.com/top...
rb-72 5 Minutes, 15 Minutes, The most effective 1 Hour below 0 or above 0 as a turn signal in the ...
Andraxx Interpretación de el indicador??? Gracias
TAC Bolsa Oscilador que hace una medición ponderara basado en la distancia entre precio y una media Mó...
Nicolas Better to download the file from the page and import it into your platform in order to not c...
marcov66 Hi Nicolas, thanks for sharing the VWAP Date Indicator. It is really powerful. Nevertheless,...
Nicolas Are you sure you are using the same exact date, hours, minutes, seconds for anchor?
julien1978 changing the trendDetectionLength setting does not seem to have any effect on the wave calcu...
arran i can't seem to get this indicator to work on forex pairs. it works great on indices etc. An...
Nicolas Indicator needs Volume, and there are no volumes with forex pairs with IG.
Trading_En_El_Ibex35 El screener no busca acciones que estén en máximos absolutos , busca acciones en las que el...
Andraxx lo de volumen aceptable, lo dices en relación al Ibex 35 supongo. Porque se margen de volume...
Juanjo Hola Queria preguntarte si la idea de maximos anuales es tuya, o bien está basada en el sis...
BERTJES82 Hi Nicolas, is it possible to adjust the starting date of the VWAP on the charts? Thanks in ...
Nicolas Yes, have a look there: https://www.prorealcode.com/prorealtime-indicators/vwap-date-anchored/
Dadoo Merci Nicolas!
Thomas007 Is there any way to build something similar for FX? I wonder what would be the replacement f...
Jean-Pierre Poulain When I buy and when I sell ?
Nicolas The featured image of the post do not deserve the indicator you are right, I attached other ...
Nicolas It is described in the post already :) The BUY/SELL signals are quite similar of what you ca...
Nicolas
8 years ago
jiminykricket Hi Nicolas, Its fair to say i'm a relative novice with ProRealtime and as such i am not sur...
Nicolas You can use assisted creation in probacktest, you'll get a quick overview on how to call a p...
jiminykricket Thanks Nicolas, i'll take a look
bolsatrilera
8 years ago
Volume Stops
v10.3
Volume Stops
6
Indicators
Aragorna Hello, ask for a help, please. why the indicator in my PRT is in a different area and not in...
Nicolas Add it on the price chart: https://www.prorealcode.com/blog/video-tutorials/how-to-add-an-in...
Infanta Congratulations. Of all the indicators that I have been able to examine, in my opinion and f...
Nicolas Indeed, if you are not willing to loose, you will always win. Averaging down losers can carr...
David You're always safer going Long especially with averaging down on an index as the probability...
Oskar Bergvall  I noted Davids and Nicolas remarks. Could it be possible to make an indicator for contraria...
Nicolas
8 years ago
Voluminator
Voluminator
0
Indicators
Nicolas
8 years ago
Nicolas Sure, please open a new topic in the probuilder forum with all specifications needed.
toni1750 Hola, funciona en P11? lo he puesto y no me sale como en la imagen. gracias.
GustavoLoboOrenstein Hello Nicolas, I have a cumulative histogram update problem, the indicator often updates ...
verdi55 Is there such a thing as a free lunch ?
maceng Thanks Nicolas for this great work! I would like to understand the math behind it in order t...
Nicolas Sorry I have no time to provide assistance for python programmers. Have a good day.
Nicolas You need to have enough bars loaded on your chart for the indicator to compute completely th...
verdi55 Working with separately calculated supertrend indicators in backtests is usually somewhat pr...
Nicolas Very interesting Verdi. Would be a great addition to the library, your own modified version ...

Top