You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取previous candle的high和low,用于设置stop loss点位

获取前一根K线高低价的实现方法
  • 主流交易平台/量化框架的K线序列默认遵循统一索引规则:当前未闭合的K线索引为0,已完全收盘的前一根K线索引为1,直接按索引取值即可。

TradingView Pine Script 场景

直接通过K线属性加索引取值:

// 前一根K线最高价
prev_high = high[1]
// 前一根K线最低价
prev_low = low[1]

如果需要规避跨交易日取值误差,可额外加交易日判断逻辑,普通场景直接用上述写法即可。

MT4/MT5(MQL4/MQL5)场景

调用内置iHigh、iLow函数取值:

// 取当前品种当前周期的前一根K线最高价
double prev_high = iHigh(_Symbol, _Period, 1);
// 取当前品种当前周期的前一根K线最低价
double prev_low = iLow(_Symbol, _Period, 1);

Python量化框架场景

以Backtrader为例:

# 前一根K线最高价
prev_high = self.data.high[-1]
# 前一根K线最低价
prev_low = self.data.low[-1]

重要提示:必须等前一根K线完全收盘、数值固定后再取值,不要在当前K线未走完时读取上一根K线的数值,避免K线波动导致取值错误、止损位设置不符合预期。如果是做空单设置止损,直接将止损价赋值为上述取到的prev_high即可。

内容的提问来源于stack exchange,提问作者WaddyBox

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.16 14:06:08