Strategy¶
-
class
quanttrader.strategy.strategy_base.
StrategyBase
¶ Base strategy class
-
adjust_position
(sym, size_from, size_to, timestamp=None)¶ use market order to adjust position :param sym: :param size_from: :param size_to: :param timestamp: used by backtest broker to get price on timestamp :return:
-
cancel_all
()¶ cancel all standing orders from this strategy id :return:
-
cancel_order
(oid)¶
-
on_fill
(fill_event)¶ on order filled derived class call super().on_fill first
-
on_init
(strategy_manager, data_board, instrument_meta)¶
-
on_order_status
(order_event)¶ on order acknowledged :return:
-
on_start
()¶
-
on_stop
()¶
-
on_tick
(tick_event)¶ Respond to tick
-
place_order
(o)¶ expect user to set up order type, order size and order price
-
set_capital
(capital)¶
-
set_params
(params_dict=None)¶
-
set_symbols
(symbols)¶
-
-
class
quanttrader.strategy.strategy_manager.
StrategyManager
(config, broker, order_manager, position_manager, risk_manager, data_board, instrument_meta)¶ -
cancel_all
()¶
-
cancel_order
(oid)¶
-
cancel_strategy
(sid)¶ call strategy cancel to take care of strategy order_manager
-
flat_all
()¶ flat all according to position_manager TODO: should turn off all strategies? :return:
-
flat_strategy
(sid)¶ flat with MARKET order (default) Assume each strategy track its own positions TODO: should turn off strategy?
-
load_strategy
(strat_dict)¶
-
on_cancel
(order_event)¶ TODO no need for this
-
on_fill
(fill_event)¶ assign fill ordering to order id ==> strategy id TODO: check fill_event source; if not, fix it or use fill_event.order_id
-
on_order_status
(order_event)¶ TODO: check if source is working :param order_event: :return:
-
on_position
(pos)¶ get initial position read from config file instead :param pos: :return:
-
on_tick
(k)¶
-
pause_strategy
(sid)¶
-
place_order
(o, check_risk=True)¶
-
start_all
()¶
-
start_strategy
(sid)¶
-
stop_all
()¶
-
stop_strategy
(sid)¶
-