其他接口

update_universe - 更新合约池

rqalpha.api.update_universe(id_or_symbols)

该方法用于更新现在关注的证券的集合(e.g.:股票池)。PS:会在下一个bar事件触发时候产生(新的关注的股票池更新)效果。并且update_universe会是覆盖(overwrite)的操作而不是在已有的股票池的基础上进行增量添加。比如已有的股票池为['000001.XSHE', '000024.XSHE']然后调用了update_universe(['000030.XSHE'])之后,股票池就会变成000030.XSHE一个股票了,随后的数据更新也只会跟踪000030.XSHE这一个股票了。

Parameters

id_or_symbols (Union[str, Instrument, Iterable[str], Iterable[Instrument]]) -- 标的物

Return type

None

subscribe - 订阅合约

rqalpha.api.subscribe(id_or_symbols)

订阅合约行情。该操作会导致合约池内合约的增加,从而影响handle_bar中处理bar数据的数量。

需要注意,用户在初次编写策略时候需要首先订阅合约行情,否则handle_bar不会被触发。

Parameters

id_or_symbols (Union[str, Instrument, Iterable[str], Iterable[Instrument]]) -- 标的物

Return type

None

unsubscribe - 取消订阅合约

rqalpha.api.unsubscribe(id_or_symbols)

取消订阅合约行情。取消订阅会导致合约池内合约的减少,如果当前合约池中没有任何合约,则策略直接退出。

Parameters

id_or_symbols (Union[str, Instrument, Iterable[str], Iterable[Instrument]]) -- 标的物

Return type

None

subscribe_event - 订阅事件

rqalpha.api.subscribe_event(event_type, handler)

订阅框架内部事件,注册事件处理函数

Parameters
  • event_type (EVENT) -- 事件类型

  • handler (Callable[[StrategyContext, Event], None]) -- 处理函数

Return type

None

plot - 画图

rqalpha.api.plot(series_name, value)

在策略运行结束后的收益图中,加入自定义的曲线。 每次调用 plot 函数将会以当前时间为横坐标,value 为纵坐标加入一个点,series_name 相同的点将连成一条曲线。

Parameters
  • series_name (str) -- 曲线名称

  • value (number) -- 点的纵坐标值

Example

def handle_bar(context, bar_dict):
    plot("OPEN", bar_dict["000001.XSHE"].open)