量化交易学习-RSI策略3

Signal方式最近发现Backtrader还提供一种Signal的方式来编辑策略,正好最近又看了一本书里面有一个RSI策略的例子用的就是Signal的方式,就分享出来。首先大概介绍下Backtrader的Signal策略编译方式。有不懂的查阅官方文档官方的例子是这样的class MySignal(bt.Indicator): lines = ('signal',) par...
摘要由CSDN通过智能技术生成

Signal方式

最近发现Backtrader还提供一种Signal的方式来编辑策略,正好最近又看了一本书里面有一个RSI策略的例子用的就是Signal的方式,就分享出来。

首先大概介绍下Backtrader的Signal策略编译方式。有不懂的查阅官方文档
官方的例子是这样的

class MySignal(bt.Indicator):
    lines = ('signal',)
    params = (('period', 30),)

    def __init__(self):
        self.lines.signal = self.data - bt.indicators.SMA(period=self.p.period)

如果self.lines.signal

大于零 就是多头信号

小于零 就是空头信号

等于 0 没有信号

backtrader里有五种不同的Signal,分Main和Exit两组。
Main 组:
LONGSHORT: 接受多头和空头两种技术信号。
比如官方的例子:

import backtrader as bt

data = bt.feeds.OneOfTheFeeds(dataname='mydataname')
cerebro.adddata(data)

cerebro.add_signal(bt.SIGNAL_LONGSHORT, MySignal)
cerebro.run()

用的就是SIGNAL_LONGSHORT

LONG:

  • 接受为多头信号
  • 如果有LONGEXIT,那用来平仓这个多头仓位
  • 如果有SHORT没有 LONGEXIT,会先平仓这个多头仓位再来一个空头单子。
    SHORT:
  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值