Python美股量化交易填坑记录——19.基于zig函数的交易信号
发布网友
发布时间:2024-10-03 05:01
我来回答
共1个回答
热心网友
时间:2024-10-19 11:09
在群里,有位美股高手邱哥分享了一个富途脚本的交易信号,大家反响良好。我尝试将其移植到TradingView的pine脚本中,遇到一个挑战,那就是zig函数的使用。富途库中的zig函数定义为:当价格变动幅度超过N%时,根据K值的不同,表示开盘价、最高价、最低价或收盘价。一开始,这个概念让我困惑,但在TradingView搜索后,我发现了一个名为“Zig Zag”的内置指标,结合邱哥的脚本,我理解了它输出的是沿着直线模拟的y值,即zig值。
之字转向策略的核心在于识别股价的“顶”和“底”,通过连接这些点,形成趋势线,有助于过滤掉噪音,抓住趋势。zig函数是通过5%的股价变化幅度来定义笔的结束和开始。上升笔中,股价上涨,笔的顶点上升,若盘整后价格下跌超过5%,则上升笔结束,开始下降笔。然而,要小心的是,下降笔的起始并非从幅度超过5%的bar开始,而是从笔顶点之后的bar,这可能导致滞后,被称为“追认”现象。
为解决滞后问题,zig函数引入了“临时顶”和“临时底”的概念。临时底在下降笔且有止跌迹象时成立,而临时顶则在上升笔且有止涨迹象时形成。回测结果显示,使用临时顶底作为入场和离场信号,如在SPY 1小时图上,今年1月1日至7月17日的回测中,不设止损时,胜率和净利润分别为71.43%和2.81%。增加入场次数后,胜率和净利润都有所提升。
由于涉及版权,这里不再公开源代码,只是提供指标使用权。请在使用邱哥的贡献时,保持感激之情。最后,由于TradingView策略的回测限制,我将其转换为indicator,虽然无法直接回测,但不影响图表上的所有标记。
热心网友
时间:2024-10-19 11:14
在群里,有位美股高手邱哥分享了一个富途脚本的交易信号,大家反响良好。我尝试将其移植到TradingView的pine脚本中,遇到一个挑战,那就是zig函数的使用。富途库中的zig函数定义为:当价格变动幅度超过N%时,根据K值的不同,表示开盘价、最高价、最低价或收盘价。一开始,这个概念让我困惑,但在TradingView搜索后,我发现了一个名为“Zig Zag”的内置指标,结合邱哥的脚本,我理解了它输出的是沿着直线模拟的y值,即zig值。
之字转向策略的核心在于识别股价的“顶”和“底”,通过连接这些点,形成趋势线,有助于过滤掉噪音,抓住趋势。zig函数是通过5%的股价变化幅度来定义笔的结束和开始。上升笔中,股价上涨,笔的顶点上升,若盘整后价格下跌超过5%,则上升笔结束,开始下降笔。然而,要小心的是,下降笔的起始并非从幅度超过5%的bar开始,而是从笔顶点之后的bar,这可能导致滞后,被称为“追认”现象。
为解决滞后问题,zig函数引入了“临时顶”和“临时底”的概念。临时底在下降笔且有止跌迹象时成立,而临时顶则在上升笔且有止涨迹象时形成。回测结果显示,使用临时顶底作为入场和离场信号,如在SPY 1小时图上,今年1月1日至7月17日的回测中,不设止损时,胜率和净利润分别为71.43%和2.81%。增加入场次数后,胜率和净利润都有所提升。
由于涉及版权,这里不再公开源代码,只是提供指标使用权。请在使用邱哥的贡献时,保持感激之情。最后,由于TradingView策略的回测限制,我将其转换为indicator,虽然无法直接回测,但不影响图表上的所有标记。