Die Strategie verwendet mehrere technische Indikatoren, um die Preisumkehr zu beurteilen und gehört zu den Reversal Trading Strategien, die von mehreren Faktoren angetrieben werden. Sie integriert die Indikatoren 123 Form und Polarisierungs-Fragmentierungs-Effizienz (PFE), die bei Übereinstimmung der beiden Signale eingegeben werden können, um falsche Signale effektiv zu filtern und die Handelsgewinnrate zu erhöhen.
Die Strategie besteht aus zwei Teilen:
123 Formentscheidung: Wenn der Schlusskurs am dritten Tag nach zwei aufeinanderfolgenden Aufstiegen zurückgeht und die stochastische Schnelllinie unter der langsamen Linie liegt, erzeugt dies ein Kaufsignal. Wenn der Schlusskurs am dritten Tag nach zwei aufeinanderfolgenden Rückgängen rückläuft und die stochastische Schnelllinie über der langsamen Linie liegt, erzeugt dies ein Verkaufssignal.
PFE-Indikator-Beschluss: PFE ist oberhalb der vorgegebenen Obergrenze und unterhalb der vorgegebenen Untergrenze.
Die 123 Formation wird nur eingegeben, wenn sie ein Signal mit dem PFE-Indikator abgleicht. Wenn beide nicht übereinstimmen, wird eine leere Position gehalten.
123 Form identifiziert potenzielle Wendepunkte. PFE unterscheidet Trends effizient und vermeidet die Verfolgung falscher Durchbrüche. Beide zusammen können die Richtigkeit der Beurteilung verbessern und die Wirkung der Multifaktor-Verifizierung erreichen.
Wie man damit umgeht:
Diese Strategie kann in folgenden Bereichen optimiert werden:
Die Strategie kombiniert mehrere Faktoren, um die Preiswendepunkte zu bestimmen. Sie ist sowohl theoretisch fundiert als auch einfach umzusetzen. Mehrfaktoren, die die Genauigkeit der Beurteilung im Vergleich zu einem einzigen Indikator verbessern, sind eine relativ robuste Umkehrhandelsstrategie. Die Strategie kann durch Parameteroptimierung, Stop-Loss-Management und Kombinationsmethoden weiter verbessert werden.
/*backtest
start: 2023-09-11 00:00:00
end: 2023-09-13 08:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 16/04/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
// The Polarized Fractal Efficiency (PFE) indicator measures the efficiency
// of price movements by drawing on concepts from fractal geometry and chaos
// theory. The more linear and efficient the price movement, the shorter the
// distance the prices must travel between two points and thus the more efficient
// the price movement.
//
// 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
PFE(Length,LengthEMA,BuyBand,SellBand) =>
pos = 0.0
PFE = sqrt(pow(close - close[Length], 2) + 100)
C2C = sum(sqrt(pow((close - close[1]), 2) + 1), Length)
xFracEff = iff(close - close[Length] > 0, round((PFE / C2C) * 100) , round(-(PFE / C2C) * 100))
xEMA = ema(xFracEff, LengthEMA)
pos := iff(xEMA < SellBand, -1,
iff(xEMA > BuyBand, 1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Reversal & PFE (Polarized Fractal Efficiency)", 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, "---- PFE ----")
LengthPFE = input(9, minval=1)
LengthEMA = input(5, minval=1)
BuyBand = input(50, step = 0.1)
SellBand = input(-50, step = 0.1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posPFE = PFE(LengthPFE,LengthEMA,BuyBand,SellBand)
pos = iff(posReversal123 == 1 and posPFE == 1 , 1,
iff(posReversal123 == -1 and posPFE == -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 )