
Strategi pelacakan trend penurunan nilai dinamik Fisher menggunakan perubahan Fisher untuk mengenal pasti perubahan dalam trend harga berdasarkan indikator perubahan Fisher. Strategi ini menggunakan perubahan Fisher untuk memusatkan harga ke skala standard untuk lebih mudah mengesan titik perubahan trend yang berpotensi. Dengan menyesuaikan penurunan nilai secara dinamik, strategi ini dapat menyesuaikan diri dengan keadaan pasaran yang berbeza, meningkatkan ketepatan pengenalan trend.
Strategi Fisher Transformed Dynamic Depreciation Trend Tracking Strategi Fisher Transformed Dynamic Depreciation Trend Tracking Strategi Fisher Transformed Indicators and Dynamic Depreciation Strategi Fisher Transformed Indicators and Dynamic Depreciation Strategi Fisher Transformed Dynamic Depreciation Trend Tracking Strategi Fisher Transformed Dynamic Depreciation Trend Tracking Strategi Fisher Transformed Dynamic Depreciation Strategi Fisher Transformed Dynamic Depreciation Strategi Fisher Transformed Dynamic Depreciation Strategi Fisher Transformed Dynamic Depreciation Strategi Fisher Transformed Dynamic Depreciation Strategi Fisher Transformed Dynamic Depreciation Strategi Fisher Transformed Dynamic Depreciation Strategi Fisher Transformed Dynamic Depreciation Strategi Fisher Transformed Dynamic Depreciation Strategi Fisher Transformed Dynamic Depreciation Strategi Fisher Transformed Dynamic Depreciation Strategi Fisher Transformed Dynamic Depreciation Strategi Fisher Transformed Dynamic Depreciation Strategi Fisher Transformed Dynamic Depreciation Strategi Fisher Transformed Dynamic Depreciation Strategi Fisher Transform
/*backtest
start: 2024-05-01 00:00:00
end: 2024-05-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Qiuboneminer - Fisher Transform", overlay=true)
// Parámetros
Len = input.int(10, minval=1)
mult1 = input.int(1, minval=1)
threshold = 2.6
// Función Fisher Transform
fish(Length, timeMultiplier) =>
var float nValue1 = na
var float nFish = na
xHL2 = hl2
xMaxH = ta.highest(xHL2, Length * timeMultiplier)
xMinL = ta.lowest(xHL2, Length * timeMultiplier)
nValue1 := 0.33 * 2 * ((xHL2 - xMinL) / (xMaxH - xMinL) - 0.5) + 0.67 * nz(nValue1[1])
nValue2 = if nValue1 > 0.99
0.999
else if nValue1 < -0.99
-0.999
else
nValue1
nFish := 0.5 * math.log((1 + nValue2) / (1 - nValue2)) + 0.5 * nz(nFish[1])
nFish
// Cálculo del Fisher Transform para mult1
Fisher1 = fish(Len, mult1)
// Condiciones de entrada y salida
longCondition = Fisher1 > nz(Fisher1[1]) and nz(Fisher1[1]) <= nz(Fisher1[2]) and Fisher1 < -threshold
shortCondition = Fisher1 < nz(Fisher1[1]) and nz(Fisher1[1]) >= nz(Fisher1[2]) and Fisher1 > threshold
// Estrategia de entrada
if (longCondition)
strategy.entry("Long", strategy.long)
if (shortCondition)
strategy.entry("Short", strategy.short)
// Ploteo del Fisher Transform
plot(Fisher1, color=(Fisher1 > nz(Fisher1[1]) ? color.rgb(34, 255, 0) : color.rgb(255, 0, 212)), title="Fisher TF:1")
// Ploteo de líneas de umbral
hline(threshold, "Umbral Superior", color=color.rgb(255, 0, 0), linestyle=hline.style_dotted)
hline(-threshold, "Umbral Inferior", color=#008704, linestyle=hline.style_dotted)