Strategy vault / Mean reversion
Quantitative Trading Strategy with Multi Indicator Confirmation
This article explains in detail a quantitative trading strategy that utilizes multi-indicator confirmation to generate signals. It combines different techniques to improve reliability. I. Strategy Logic The strategy…
This article explains in detail a quantitative trading strategy that utilizes multi-indicator confirmation to generate signals. It combines different techniques to improve reliability.
I. Strategy Logic
The strategy synthesizes two techniques:
(1) 123 Reversal Pattern
Identify potential bottoms and tops based on candle close relationships.
Use stochastic to validate reversal signals and avoid false signals.
(2) Smoothed Accumulation/Distribution
Calculate Accumulation/Distribution and moving average.
Determine trends based on divergences between the indicator and MA.
Only agreeable signals from both techniques are taken.
By requiring multiple confirmations, certain false signals can be filtered out and accuracy improved.
II. Advantages of the Strategy
The biggest advantage is multi-indicator confirmation, which overcomes single indicator limitations and enhances robustness.
Another advantage is combining two different technique types for greater comprehensiveness.
Finally, the combinations also provide more tuning options.
III. Potential Risks
However, some risks exist:
Firstly, multi-indicator combinations increase optimization difficulty and overfitting risks.
Secondly, discrepancies between indicators require clear judgment rules.
Finally, some indicators still have lagging issues.
IV. Summary
In summary, this article has explained a quantitative trading strategy utilizing multi-indicator confirmations. It improves signals through synthesis but requires managing optimization difficulty and indicator lags. Overall it provides a relatively robust approach.
Parameters
| Name | Default | What it controls |
|---|---|---|
| v_input_1 | true | ---- 123 Reversal ---- |
| v_input_2 | 14 | Length |
| v_input_3 | true | KSmoothing |
| v_input_4 | 3 | DLength |
| v_input_5 | 50 | Level |
| v_input_6 | true | ---- Smoothed Williams AD ---- |
| v_input_7 | 14 | LengthWillAD |
| v_input_8 | false | Trade reverse |
Source Pine Script
/*backtest
start: 2023-08-15 00:00:00
end: 2023-09-14 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 21/07/2021
// This is combo strategies for get a cumulative signal.
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50.
// The strategy sells at market, if close price is lower than the previous close price
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
// Accumulation is a term used to describe a market controlled by buyers;
// whereas distribution is defined by a market controlled by sellers.
// Williams recommends trading this indicator based on divergences:
// Distribution of the security is indicated when the security is making
// a new high and the A/D indicator is failing to make a new high. Sell.
// Accumulation of the security is indicated when the security is making
// a new low and the A/D indicator is failing to make a new low. Buy.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
vFast = sma(stoch(close, high, low, Length), KSmoothing)
vSlow = sma(vFast, DLength)
pos = 0.0
pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0)))
pos
SWAD(Length) =>
pos = 0.0
xWAD = 0.0
xPrice = close
xWAD:= iff(close > nz(close[1], 0), nz(xWAD[1],0) + close - low[1],
iff(close < nz(close[1],0), nz(xWAD[1],0) + close - high[1],0))
xWADMA = sma(xWAD, Length)
pos:= iff(xWAD > xWADMA, 1,
iff(xWAD < xWADMA, -1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Reversal & Smoothed Williams AD", shorttitle="Combo", overlay = true)
line1 = input(true, "---- 123 Reversal ----")
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
line2 = input(true, "---- Smoothed Williams AD ----")
LengthWillAD = input(14, step = 1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posSWAD = SWAD(LengthWillAD)
pos = iff(posReversal123 == 1 and posSWAD == 1 , 1,
iff(posReversal123 == -1 and posSWAD == -1, -1, 0))
possig = iff(reverse and pos == 1, -1,
iff(reverse and pos == -1 , 1, pos))
if (possig == 1 )
strategy.entry("Long", strategy.long)
if (possig == -1 )
strategy.entry("Short", strategy.short)
if (possig == 0)
strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )Published by ChaoZhang on the FMZ strategy square · last modified 2023-09-15. Collected in the Quant Trading Vault. Unvalidated research: re-test with your own data and costs before trusting it.
Build this with AgenKit
A spec is not a trading system. Paste this into your coding agent and AgenKit runs a specialist team — architecture, test-first build, risk gates, review — with paper trading on by default.
/agenkit build a production-grade trading bot with a backtest engine, risk controls and paper trading by default from strategies/Quantitative-Trading-Strategy-with-Multi-Indicator-Confirmation.md- npx agenkit install engineering-kit in your project
- Paste the command into your agent and approve each phase
- Get tests, backtest, risk controls and a paper-trading switch
Understand it first
Before you run this, read the lesson behind the idea and how to backtest it honestly. Specs like this one are the survivors of an unknown number of trials; deflate their results accordingly.
Related specs
- Adaptive Trading Strategy Combining Dynamic Trend Reversal and Stochastic IndicatorPine Script · Mean reversion · 1d
- Advanced 15 Minute Chart Trading Signal StrategyPine Script · Mean reversion · 3h
- Bollinger Bands Stochastic RSI Extreme Strategy BBSR Extreme StrategyPine Script · Mean reversion · 1h
- BuySell Strategy depends on AOStochRSIATRPine Script · Mean reversion · 30m
- Byron Serpent Cloud Quant StrategyPine Script · Mean reversion · 1h
- Dual Momentum Trend Reversal Strategy Based on RSI and Stochastic RSIPine Script · Mean reversion · 1h