대장님, 설계된 그림줄의 손해 중지 값이 오차 값보다 크면 삼중 계산 줄이 바뀌어야 하지만 작동하지 않는 것을 알려 주시겠습니까?
indicator("根据历史区间最高价、最低价、+偏移率,计算止损价、止盈价", overlay=true)
var IshistoryLength = input.int(15, title = "Ishistory Length", minval=1, maxval=100, step=1)
var StopLossOffset = input.float(0.005, title = "Stop Loss Offset", minval=0.001, step=0.001)
var ProfitLossRatio = input.float(2, title = "Profit Loss Ratio", minval=0.1, step=0.1)
var float highest = na
var float lowest = na
var float StopLossLong = na
var float StopLossShort = na
var float StopProfitLong = na
var float StopProfitShort = na
highest := ta.highest(high[1], IshistoryLength)
lowest := ta.lowest(low[1], IshistoryLength)
//存在问题:波动越小时,止损值越小;波动越大时,止损值越大;
//优化方案:计算一下止损比例,如果止损小于0.5%,就把止损偏移量加进去;如果止损大于0.5%,则不加偏移量;控制总体止损值不大于1%;
StopLossLong := math.round(((open - lowest) / open) <= StopLossOffset ? (1 - StopLossOffset) * lowest : lowest, precision = 6)
plot(StopLossLong, title = "开多止损价:", color = color.purple)
StopProfitLong := math.round((1 + (StopLossOffset * ProfitLossRatio)) * highest, precision = 6)
plot(StopProfitLong, title = "开多止盈价:", color = color.orange)
StopLossShort := math.round(((open - highest) / open) <= StopLossOffset ? (1 + StopLossOffset) * highest : highest, precision = 6)
plot(StopLossShort, title = "开空止损价:", color = color.red)
StopProfitShort := math.round((1 - (StopLossOffset * ProfitLossRatio)) * lowest, precision = 6)
plot(StopProfitShort, title = "开空止盈价:", color = color.navy)
희망네, 감사합니다.
발명가들의 수량화 - 작은 꿈StopLossShort := math.round ((((highest - open) / open) <= StopLossOffset? (1 + StopLossOffset) * highest : highest, precision = 6) // 중지 손실 빈 목록, 재배정, 중지 손실 가격을 계산; 공백과 과잉 알고리즘, 조심하세요!