Category Archives: Uncategorized

Revisualizing The ADX Oscillator

The importable AIQ EDS file based on Neil Jon Harrington’s article in the October 2024 issue of Technical Analysis of Stocks & Commodities magazine, titled “Revisualizing The ADX Oscillator,” Introduces a new, re-envisioned ADX that provides more information to the trader and makes ADX readings more intuitive and easier to visualize, can be obtained on request via rdencpa@gmail.com. The code is also shown here:

!DMI & ADX indicators 
!Coded by Rich Denning, 10/14/24
	
Dailyrange is [high]-[low].
Ycloseh is abs(val([close],1)-[low]).
Yclosel is abs(val([close],1)-[high]).
Trange1 is Max(Dailyrange,Ycloseh).
Trange is Max(Trange1,Yclosel).

define HarringtonLength 10.
define sLen 5.
define ADXlow 15.
define ADXHigh 40.

!To convert Wilder averaging to exponential averaging use this formula:
!ExponentialPeriods = 2 * WilderPeriod - 1.

days is 2 * HarringtonLength - 1.

!+DM CODE:
yhigh is val([high],1).
ylow is val([low],1).
rhigh is ([high]-yhigh).
rlow is (ylow-[low]).
DMplus is iff(rhigh > 0 and rhigh > rlow, rhigh, 0).
DMminus is iff(rlow > 0 and rlow >= rhigh, rlow, 0).
	
AvgPlusDM is expAvg(DMplus,days).
AvgMinusDM is expavg(DMminus,days).
                  	
!AVERAGE TRUE RANGE:
ATR is expAvg(Trange,Days).
!DMI CODE:
PlusDMI is (AvgPlusDM/ATR)*100.	
sPlusDMI is simpleavg(PlusDMI,sLen).
MinusDMI is AvgMinusDM/ATR*100.	
sMinusDMI is simpleavg(MinusDMI,sLen).

!PLOT sDIdiff as historigram:           
  sDIdiff is sPlusDMI-sMinusDMI. 		 
  ZERO if sPlusDMI = 0 and sMinusDMI = 0.
  sDIsum is sPlusDMI+sMinusDMI.
  sDX is iff(ZERO,100,abs(sDIdiff)/sDIsum*100).
!PLOT ADX as single line indicator with support at 15:
  sADX is ExpAvg(sDX,days).		

Green if sDIdiff > 0 and sADX > ADXlow.
Red if sDIdiff <= 0 and sADX <= ADXlow.

Code for the author’s indicator is set up in the AIQ EDS code file. Figure 7 demonstrates the indicator on a daily chart of the QQQ. Note that I did not implement here all of the colors the author uses. I implemented the strong up (green), strong down (red) and neutral (yellow).

Sample Chart

FIGURE 7: AIQ. The indicator is displayed on a chart of the NASDAQ-100 ETF (QQQ).

—Richard Denning
rdencpa@gmail.com
for AIQ Systems

Evolution of AI in Financial Markets + Current Market Analysis

AI in trading, has evolved from early rule-based systems AIQ, to the advanced machine-learning tools we see today. In the early days, AI’s role in financial trading was centered on mimicking human decision-making through structured systems that applied pre-defined rules. These rules were based on standardized interpretations of technical indicators, such as crossovers and divergences, which traders frequently use during technical analysis.

Unlike humans who might analyze these indicators in isolation, early expert systems combined them to generate a comprehensive view, providing weighted insights and reducing manual effort. Over the past 40-45 years, AI has advanced significantly in speed, precision, decision-making, and reducing human error. While initial explorations in neural networks showed promise, the focus shifted to rule-based systems, which laid the foundation for today’s machine learning and deep learning models. These modern systems are vastly more sophisticated, but their roots in expert systems demonstrate the steady progression of AI in finance.

However, rule-based systems have limitations. They depend on predefined rules and lack adaptability. While this ensures consistency, the systems do not learn or adjust as market conditions evolve. This raises questions about how much markets change versus what is already accounted for in technical indicators.

The rise of algorithmic trading brought advancements, with firms like Renaissance Technologies leveraging statistical models and high-speed trading techniques, including moving averages arbitrage. These developments mark a significant shift from the rule-based systems of the past to the dynamic, high-speed tools of today.

This session also covers a current market update using the AIQ market Timing tools.

Evolution of AI in Financial Market Analysis

In this hour-long session, Steve Hill, CEO of AIQ Systems will trace the evolution of AI in trading from early expert systems through

The Early Days: Expert Systems, The Rise of Algorithmic Trading, the Introduction of Neural Networks in Trading, The Advent of Machine Learning and Deep Learning, the Role of Human Traders and Oversight, Modern AI Trading Systems and Tools, and Risks and Future Directions in AI Trading.

Current AIQ Market Analysis will also be covered.

Date & TimeNov 14, 2024 5 – 6 pm Eastern

Register Now https://us02web.zoom.us/meeting/register/tZEkd-CtqzsqGNbwpQ182EW_FnCD63HYY3JF

Francesco Bufi’s adaptive thresholds technique

The AIQ code is provided here for Francesco Bufi’s adaptive thresholds technique and his four test systems, as described in his article in the October 2024 Stocks and Commodities issue (“Overbought/Oversold Oscillators: Useless Or Just Misused?”).

Did people like J. Welles Wilder and John Murphy (pioneers in technical analysis and the authors of several notable books in the field) work with no purpose other than to cheat us? Or have their techniques perhaps stopped working? Are some of these techniques indeed useless, as some would claim? Here’s a test to find out.

Francesco Bufi presents a strategy based on the relative strength index (RSI) that continuously adjusts the buying level.

Since the author optimized the test systems for intraday trading and the AIQ code provided here is based on daily bar trading, the parameters may need to be adjusted to get a realistic test.

!Overbought/Oversold Oscillators: Useless Or Just Misused?
!Author: Francesco P. Bufi, TASC October 2024
!Coded in AIQ by: Richard Denning, 8/17/2024

!INPUTS:
C is [close].
C1 is valresult(C,1).
H is [high].
L is [low].
TrendLen is 200.
RSILen is 2.
BuyLevel is 14.
UpBuyLevel is 12.
DnBuyLevel is 4.
AdaptLen is 8.
KAdaptive is 6.
ExitBars is 3.

!BAT:
StdDev is sqrt(variance(C,AdaptLen)).
value1 is StdDev.
value2 is slope2(C,AdaptLen).
value3 is value2/value1.
value3a is iff(value3>0.5,0.5,iff(value3<-0.5,-0.5,value3)).
BAT is value3a.

!TREND:
SMA is simpleavg(C,TrendLen).
Trend is iff(C > SMA,1,-1).

!! RSI WILDER
!To convert Wilder Averaging to Exponential Averaging use this formula:
!ExponentialPeriods = 2 * WilderPeriod - 1.
U is C - C1.
D is C1 - C.
W1 is RSILen.
rsiLen1 is 2 * W1 - 1.
AvgU is ExpAvg(iff(U>0,U,0),rsiLen1).
AvgD is ExpAvg(iff(D>=0,D,0),rsiLen1).
rsi is 100-(100/(1+(AvgU/AvgD))).

!SYSTEMS FOR TESTING:
! Sys1:
Buy1 if rsi<BuyLevel.

!Sys2:
Buy2 if rsi<BuyLevel and Trend=1.

!Sys3:
Buy3 if (Trend=1 and rsi<UpBuyLevel) or (Trend=-1 and rsi<DnBuyLevel).

!Sys4:
BL is BuyLevel*KAdaptive*BAT.
Buy4 if rsi<BuyLevel*KAdaptive*BAT. 

Sell if {position days} >= ExitBars.

ShowValues if 1.

—Richard Denning
rdencpa@gmail.com
for AIQ Systems

EDS Strategies Golden Oldies + Fall Sector & Industry group Analysis Update

In the first segment, Steve Hill CEO of AIQ Systems retested some older EDS strategies from decades past and discovered what still works today. In the second segment, David Wozniak of TFRTrader covered his fall sector and industry group technical analysis update. (TFRTrader special offer available at https://aiqeducation.com/tfr-2/


The 3 best performing of the golden oldies EDS strategies are available below. Save all these files to your /wintes32/EDS Strategies folder

Candlestick bullish Engulfing – must occur close to the Lower Bollinger Band

Download the EDS file

Download the backtest file

Volume Climax Reversal Indicator System

Download the EDS file

Download the backtest file

Pullback in 66 Day Uptrend

Download the EDS file

Download the backtest file