Skip to content

字段

字段介绍
so.symbol获取执行到当前标的
so.node_date获取执行当前函数的日期如 2024-01-05
so.node_date_time获取执行当前函数的日期如 2025-02-24 13:36:00
so.node_time获取执行当前函数的日期如 13:36:00

重要函数

allow 同意选票

  • 同意当前进入的标的入选
  • 传入一个字典数据。如果是on_select中执行,该数据会被传递给选票页面的数据展示
  • 如果是在on_select中执行,会在on_filter_select方法中获取到该数据,并且对选票进行排名
  • 如果是在on_next中执行,会在on_filter_next方法中获取到该数据,并且对选票进行排名
参数参数类型默认说明
filter_datadict传入需要传递的字典数据
返回
查看更多使用详情

基本上所有获取数据的地方都有该函数可以调用。比较常见

python
def on_select(so: SelectOp):
    so.all()
    # 最近20个交易日最少要上涨13天 否则不要
    if not so.last().up_days(20) > 13:
        return
    # 10日均线需要在40日均线之上 否则不要
    if not so.last(1).ma(10) > so.last(1).ma(40):
        return
    # 同意该票并传递数据
    so.allow({  
        "上涨天数": so.last().up_days(20),  # 最近20个交易日上涨天数
        "涨停天数": so.last().up_limit_days(20),  # 最近20个交易日涨停天数
    })  

获取数据函数

last 倒数第i条数据

获取截止当前时间节点的,倒数第i条数据,返回是单个数据。

参数参数类型默认说明
iint1倒数第i条数据
返回PanFrame
查看更多使用详情

基本上所有获取数据的地方都有该函数可以调用。比较常见

python
def on_select(so: SelectOp):
    # 不传默认是1
    so.last()
    # 获取倒数第二条数据
    so.last(2)

last_n 倒数N条数据

获取截止当前时间节点的,倒数N条数据,返回是多条数据。

参数参数类型默认说明
nintN条数据
返回PanFrame
查看更多使用详情

基本上所有获取数据的地方都有该函数可以调用。比较常见

python

def on_select(so: SelectOp):
    # 获取最近5条数据
    so.last_n(5)

all 全部数据

获取截止当前时间节点的所有数据。

参数
返回PanFrame
查看更多使用详情

基本上所有获取数据的地方都有该函数可以调用。比较常见

python
def on_select(so: SelectOp):
    so.all()

pan 获取自定义数据

  • 通过该方法可以获取自定义的一些数据
参数参数类型默认说明
pan_clzPanFrame类|str建议传入继承的PanFrame类,这样可以知道字段名
extend_lenint比如数据是一年才有一条数据。 这里就要传大于365的值。避免取上一条数据的时候。因为时间跨度问题拿不到。
storageStorageModule|str读配置可以为空,该数据所在的数据源读取,默认是读取本地的配置,这里可以输入例如,disk本地存储,mongo_db等
storage_argsdict读配置上面数据源所对应的配置
返回PackOp [ PanFrame | DataFrame ]
查看更多使用详情
python
from wanquant_akshare.imp import PfStockAkLgIndicator

def on_select(so: SelectOp):
    pf = so.pan(PfStockAkLgIndicator)
    # 读取该数据源所提供的pe字段
    pf.last().pe

其他函数

period 合成K线周期

  • 基于当前函数的周期,合成目标周期。需要能被整除
  • 例如on_next的周期是m1,可以用该函数合成m5周期
参数参数类型默认说明
to_periodPeriod传入想合成的周期
返回PackOp[PanBar]
查看更多使用详情
python
from wanquant_akshare.imp import PfStockAkLgIndicator
#假设当前周期是m1
next_period = Period.M1

def on_next(no: NextOp):
    #合成目标周期
    m5_op = no.period(Period.M5)
    # 最近的5分钟线数据
    m5_op.last()

    # 取最近一条完整的5分钟线
    if m5_op.is_full():
        m5_op.last()
    else:
        m5_op.last(2)

kline K线形态判断

  • 判断k线形态是否满足
参数参数类型默认说明
kline_listlist[Pattern]想判断的k线形态
返回bool
查看更多使用详情
python

def on_select(no: NextOp):
    so.kline(
        #待补充
    )