
피셔 변동 동적 하락 트렌드 추적 전략은 피셔 변동 지표에 기반하여 가격 트렌드의 변화를 식별한다. 이 전략은 피셔 변동을 사용하여 가격을 표준 스케일로 정형화하여 잠재적인 트렌드 역점을 더 쉽게 감지한다.
피셔 변동 동적 하락 트렌드 추적 전략은 피셔 변동 지표와 동적 하락을 통해 가격 트렌드의 변화를 식별하고 다양한 시장 상태에 적응한다. 이 전략은 시장 트렌드를 더 잘 포착하고 트렌드 추적 거래를 구현한다. 전략의 장점은 동적 하락을 조정하고 가격 잡음 방해를 줄이고 직관적인 차트를 보여주는 데 있다. 그러나 동시에 변수 최적화 위험, 추세 정체, 흔들림 시장의 부실성, 극단적 행동 위험 등의 문제가 있습니다. 변수 최적화, 신호 넘어서기, 스톱포드, 포지션 관리 등의 조치를 통해 전략의 안정성과 수익성을 더욱 향상시킬 수 있습니다.
/*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)