Technical Background

Technical indicators i use | Brief explanation

Every trading system based on technical analysis uses moving average or hi/lo passband filters. A huge amount of your profit rely on the goodness of your filters or moving averages. There are two key features needed for a good moving average, little lag and smoothness. Lag is the amount of time the moving average need to follow the price action while smoothness represent the lack of noise.
It is always a trade-off beetween lag and smoothness, you can’t have both.

As a moving average i use the “ALMA” moving average, copyright by Arnaud Legoux and Dimitris Kouzis-Loukas. For better info about this moving average download this PDF from the author website.

As a main oscillator i use “THE INVERSE FISHER TRANSFORM” By John Ehlers, more info in this PDF

Basically i like the ALMA moving average because of its kernel that doesnt give too much importance to what happened in the last bar of data, so it filters out very well noise remaining stick to the underlying trend and when it really matters it responds much better then any other know moving averages.

I like the RSI-based inverse Fisher Transform because it help clearly define trigger points. First, a specified length RSI is computed and adjusted so that the values are centered around zero. The inverse transform is then applied to these values that will range from -1 to +1; when the oscillator will cross above -0.5 it’s a buy signal, viceversa when it will cross below +0.5 it’s a sell signal, as confirmation tool the signals generated by the inverse fisher transform RSI could be filtered out looking the direction of the ALMA moving average.

For computing the daily range estimates i publish on twitter i use the Hodrick-Prescott filter.
The Hodrick–Prescott filter is a mathematical tool used in macroeconomics, especially in real business cycle theory to separate the cyclical component of a time series from raw data. It is used to obtain a smoothed non-linear representation of a time series, one that is more sensitive to long-term than to short-term fluctuations. Once i have the value of the filter (see it as a baricenter) from there i compute the top and low estimate with a quantitative approach.

I recently moved to the KAMA moving average,  Kaufman’s Adaptive Moving Average is a complex indicator of technical analysis designed by Perry Kaufman in the mid-90s. The peculiarity of KAMA average is that the indicator line is slightly sensitive to insignificant fluctuations in the market, which eliminates a lot of false trading signals, thus this indicator is perfect for determining the dominant trend in the market.
This effect is achieved by the Efficiency Ratio (ER), with a strong price movement ER will tend to one, with a weak one it will be slightly more than zero. It is computed in fact dividing the direction of the market by its volatility.

ER = Direction / Volatility

This indicator performs better when there is a steady trend. It reacts to the trend appearance and changes faster, instead when the price movement is sideways and volatile, it reacts to the market fluctuations less actively producing less false signals.

Quantitative financial analysis | brief overview

One of the prevailing concepts in financial quantitative analysis is that equity prices exhibit “random walk”  characteristics.  There is a large mathematical infrastructure available for applications of fractal analysis to equity markets, there are interesting implications that can be exploited if equity prices exhibit fractal characteristics:

  1. It would be expected that an equity’s price would fluctuate, over time, and the range, of these fluctuations (ie., the maximum price minus the minimum price,) would increase with the square root of time.
  2. It would be expected that the number of equity price transitions in a time interval, (ie., the number of times an equity’s price reaches a local maximum, then reverse direction and decreases to a local minimum,) would increase with the square root of time.
  3. It would be expected that the zero-free voids in an equity’s price, (ie., the length of time an equity’s price is above average, or below average,) would have a cumulative distribution that decreases with the reciprocal of the square root of time.
  4. It would be expected that an equity’s price, over time, would be mean reverting, (ie., if an equity’s price is below its average, there would be a propensity for the equity’s price to increase, and vice versa.)
  5. It would be expected that some equity prices, over time, would exhibit persistence, ie., “price momentum”.

Point 3 is very important and use it extensively trying to understand where a particular swing might end up reversing its direction. While point 5 give us some indication about the probability that a current swing will persist. Point 2 tend to negate the possibility to achieve a good market timing strategy while point 5 may allow it to some extent.

To compute the probability of  price momentum you should follow these steps:

  1. compute natural logarithm of data increments
  2. compute the mean for all data increment computed in step 1
  3. compute rms (root mean square) of all data increments, squaring each data increment and sum all togheter
  4. Compute price momentum probability with the formula P = (((avg / rms) – (1 / sqrt (n))) + 1) / 2

where avg = data computed in step 2, rms = data computed in step 3, n = total samples of your dataset. If the resulting probability is above 0.5 then there is positive momentum, otherwise under 0.5 negative momentum. So for example you might compute the probability for the last fifty days and once this cross above the 0.50 thresold open a long position till it stays above 0.50

For further details and explanations of these formulas i recommend to deeply study the material present at  http://www.johncon.com/ntropix/
Leave a comment if you need more explanations about this topic

25 thoughts on “Technical Background

  1. geek88's avatar geek88

    Enky, i studied carefully that website, i’ve done many tests with excel and i ended up computing the avg, rms and P with your formula.
    Using all the mtgox historical data i’ve:
    avg=0.019
    rms=0.1298
    with your formula i’ve for P the value of 0.552 and so above 0.50, i’ve to conclude that there is positive price momentum and the correct position is to buy and hold bitcoins. right?

  2. Guntars's avatar Guntars

    In probability calculation step 3, do you use the data from step 1 or just raw price data? I’m trying to implement this and it’s difficult since there’s no reference.

  3. There must be a way to automatic trade bitcoins, where indicators have been attached to a chart and some ‘expert advisor’ will do the work. Like forex trading. Is someone working on that, or do we have to begin from scratch…?

    1. Thanks,

      I disagree that an automated system for long term is not interesting, with the right indicators it could be pretty accurate. It would be alike normal trading, indices, forex, stocks. Bitcoin doesn’t have another pattern like these, in basic it’s the same. Already existing indicators can easily used for it. Charts where these indicators could be attached would be necessary, but first the indicators have to be made compatible with the charts before they can be attached. Some ideas?

  4. Rishan's avatar Rishan

    Hi Enky, would like to discuss some further ideas/opportunities with you – what’s the best way to get in touch?

  5. Hi all, I’ve been having good results using basic MACD and EMA charts tuned by backtesting, but would like to automate trigger alert generation — are there any websites or tools which allow that to be set up for bitcoin? For example, I’d plug in my EMA values and get email or text alerts when there are cross up or down events… thanks for any info

  6. Harry's avatar Harry

    Hi, I’m trying to apply the price momentum formula you have to Forex. In particular the EURUSD pair. My probabilities are coming out at 0.88819644 and the stick with a 0.88819 prefix. Is there anything I’m doing wrong? For example if my last 11 closing prices are as follows what results are you getting for the probability:

    1.33762
    1.33444
    1.33353
    1.33395
    1.3342
    1.33429
    1.33429
    1.33465
    1.33439
    1.33445
    1.33455

    I presume n = 10 as we have 10 data increments. My result for the probability indicator is 0.841884379.

    Any help would be greatly appreciated.

    Thanks,
    Harry

    1. Harry's avatar Harry

      I’m finding that there is a Bias towards P<0.5. For example on 7192 datapoints 83.8% are <0.5. From analysing the data there are upward trends however they aren't reflected if you were to look at P. I have also coded this as an indicator for NT7 and you can see what I mean visually. Check out http://www.gadgetstreet.net/trading/MomentumP.jpg. You can clearly see that between 13:30 and 19:00 there is an uptrend however P barely gets above 0.5. What are your thoughts on this? I got the same results as you for the datapoints discussed above so the formula you have provided is correct.

  7. James's avatar James

    Is IRC chat a website or how else do we connect? I could surely use some up to the minute guidance. I sold out back at the previous mtgox scare and had withdrawal order pending for the last 2 months while btc finally took off again. can only affor 1/10the of what I could when I sold.. Really need good advice about getting back in and trading properly.

  8. James's avatar James

    I need to learn ‘freenode network’ and find clueless on finding ‘a client server with java where I can assume join to chat.
    What is your current btc sentiment, where would you be looking to enter long or increase position. And more- how are calculating midrange targets (~10 day cycles)? Thx

    1. Najska's avatar Najska

      I think you also use ALMA in calculating RSI. I’d done the same with an offset of 0.5, now I tried it again with 0.85 but since the bitcoin market is highly volatile, inverse fisher transformed RSI values are oscillating too fast. For instance, it is -0.576846970583 at one point, and 0.502414041399 in the next one, with only one new closing data is included.

  9. Roger's avatar Roger

    Hi Enky,

    Thank you very very much for your great blog.
    You are super as you spread the good word.
    But you are not immortal and I would like to get by without you.
    – Please, how did you forcast the move up on the 23th of September and
    4th of October? How could you know how high the rate would get up?
    – Please, how are calculated your deviation lines?
    – Please, which tools do you use habitually? And sometimes?
    – Please, which good cfd websites do you know? Which one do you use? I know Plus500 and Avatrade. EToro lookts too simble.
    – Why don’t you analyse the yen exchange rate, as it determines the
    dollar rate?
    – Please, what do you advise me to do in order to be as good as you? How can I
    learn?

    Thanking you in advance

    1. Roger's avatar Roger

      Hi Enky,

      Thank you very much for these answers 🙂 (Yes, I meant yuan).

      “Hodrick and Prescott suggest 1600 as a value for lambda for quarterly data. Ravn and Uhlig (2002) state that lambda should vary by the fourth power of the frequency observation ratio; thus, lambda should equal 6.25 for annual data and 129,600 for monthly data” (Wikipedia). What do you think about it? Which values are you using?

      Sincerely yours.

  10. Roger's avatar Roger

    Hi Enky,
    Thank you very much for these informations 🙂
    Sometimes (rarely), I’m 100% sure of the evolution of the rate. Please, could you write me where you put your money or bitcoins when you also know the future of the rate, as you wrote me “i don’t use CFD, i consider plus500,avatrade and etoro a very low level broker.”?

  11. Dear Enky,

    Thank you very much for these regular predictions! It is very kind from you.

    I already asked you how you could predict the future bitcoin price (for instance before the 9 nov 2015 that the lowest price would be approximattely 300 $). You just answered me with moving averages.

    One can read everywhere that the moving averages help to detect an inversion or confirm a trend. It appears that you can get much more than just those informations.
    Please, could you write me how do you use the moving averages in order to predict?

    Best regards & thank you again!

  12. Pingback: Long Term Update: 2017 Outlook with entropic methods – Bitcoin Trading Signals

  13. Pingback: Long Term Update: 2018 Outlook with entropic methods – Bitcoin Trading Signals

  14. Pingback: Long Term Update: 2018 Outlook with entropic methods - World News

  15. Pingback: 2019 Outlook with entropic methods – Bitcoin Trading Ideas, Analysis - Bitcoin News

Leave a reply to Mark Palmer Cancel reply