3. Operator: Creation and Basic Configuration
Operator is qteasy’s strategy container and scheduler. It runs strategies at configured frequencies and times in backtest or live trading and outputs signals in a unified format.
3.1. Create an Operator
Create one with qt.Operator(), optionally passing a strategy list and signal_type, run_freq, run_timing, and other arguments:
import qteasy as qt
# 最小示例:仅指定信号类型与运行频率
op = qt.Operator(signal_type='PT', run_freq='d')
# 创建时即添加策略(策略 ID 或实例)
op = qt.Operator(strategies='dma', signal_type='PT', run_freq='d', run_timing='open')
3.2. Add Strategies
add_strategy(stg, run_freq=None, run_timing=None): Add a single strategy with optionalrun_freq/run_timing; joins an existing Group if they match, otherwise creates a new Group.add_strategies(stg_list, run_freq=None, run_timing=None): Add multiple strategies and group them byrun_freq/run_timingthe same way.
op = qt.Operator(signal_type='PT', run_freq='d')
op.add_strategy('macd', run_freq='d', run_timing='open')
op.add_strategy(qt.get_strategy_by_id('dma'), run_freq='d', run_timing='open')
3.3. Common Attributes and Meanings
Attribute |
Meaning |
|---|---|
signal_type |
Signal type: |
run_freq |
Run frequency, e.g., |
run_timing |
Run timing, e.g., |
groups |
Group details (strategies with the same |
3.4. Set Strategy Parameters
Use set_parameter(stg_id, pars=None, run_freq=None, run_timing=None, ...) to set tunable parameters or group assignment for a strategy:
op.set_parameter('dma', pars={'short_period': 5, 'long_period': 20})
3.5. Pre-run Check
is_ready(): Check whether the Operator is configured with strategies and data requirements; useful before backtest or optimization.