
L’efficacité des mouvements de prix est mesurée par l’application des concepts de la géométrie des fractions et de la théorie du chaos. Les mouvements de prix sont translinéaires et efficaces. Plus la distance entre deux points est courte, plus le mouvement de prix est efficace.
L’indicateur central de la stratégie de trading PFE est l’efficacité de la déformation de polarisation (PFE). Il est calculé selon la formule suivante:
PFE = sqrt(pow(close - close[Length], 2) + 100)
Parmi eux, Length est une fenêtre de rétrospective dont le paramètre est défini par l’entrée de la valeur PFE. PFE est en fait une courbe de longueur qui mesure le mouvement des prix sur une période de Length, et qui est approximativement mesurée en utilisant la distance euclidienne (la distance linéaire).
Afin d’évaluer l’efficacité des mouvements de prix, nous avons besoin d’une référence pour la comparaison. Cette référence est la longueur du chemin par lequel les prix se sont connectés dans l’ordre réel sur une période de Length, appelée C2C (Close to Close), calculée selon la formule suivante:
C2C = sum(sqrt(pow((close - close[1]), 2) + 1), Length)
Nous pouvons donc calculer l’efficacité fractionnelle du mouvement des prix xFracEff:
xFracEff = iff(close - close[Length] > 0, round((PFE / C2C) * 100) , round(-(PFE / C2C) * 100))
Si le prix augmente, le score est positif et s’il baisse, il est négatif. Plus la valeur absolue est grande, moins le mouvement est efficace.
Pour générer un signal de transaction, nous calculons xEMA, c’est-à-dire la moyenne mobile de l’indice de xFracEff. et définissons les canaux d’achat et de vente:
xEMA = ema(xFracEff, LengthEMA)
BuyBand = input(50)
SellBand = input(-50)
Le signal d’achat est généré en traversant BuyBand sur xEMA; le signal de vente est généré en traversant SellBand sur xEMA.
La stratégie de trading PFE présente les avantages suivants:
Les stratégies de trading PFE comportent également les risques suivants:
Les stratégies de trading PFE peuvent être optimisées dans les domaines suivants:
La stratégie de trading PFE s’appuie sur la géométrie de fraction et la théorie du chaos et propose une nouvelle méthode pour mesurer l’efficacité des mouvements de prix. Par rapport aux indicateurs techniques conventionnels, cette méthode présente ses propres avantages, mais elle est également confrontée à un certain retard de temps, à l’optimisation des paramètres et à des problèmes de qualité du signal.
/*backtest
start: 2024-01-07 00:00:00
end: 2024-01-14 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 29/09/2017
// 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.
//
// You can change long to short in the Input Settings
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="PFE (Polarized Fractal Efficiency)", shorttitle="PFE (Polarized Fractal Efficiency)")
Length = 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")
hline(BuyBand, color=green, linestyle=line, title = "TopBand")
hline(SellBand, color=red, linestyle=line, title = "LowBand")
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)))
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)
barcolor(possig == -1 ? red: possig == 1 ? green : blue )
plot(xEMA, color=blue, title="PFE")