QUANTAXIS探索(四)回测结果和绩效分析
QUANTAXIS策略运行的回测结果和绩效分析是在 QUANTAXIS.QAARP 的QA_Risk和QA_Performance
·
QUANTAXIS策略运行的回测结果和绩效分析是在 QUANTAXIS.QAARP 的QA_Risk和QA_Performance,包括
from QUANTAXIS.QAARP import QA_Risk,QA_Performance
risk=QA_Risk()
risk = QA_Risk(...)#通常传入策略的账户
perf=QA_Performance(...)#通常传入策略的账户
QA_Risk主要是风险指标,包括:
QA_Performance是绩效指标,包括:
通过一个单标的资产回测策略来测试:
from QAStrategy.qastockbase import QAStrategyStockBase
from QUANTAXIS.QAARP import QA_Risk,QA_Performance
from rich import print #用rich包美化打印
class MyStrategy(QAStrategyStockBase):
def user_init(self):
self.counter=1
def on_bar(self,bar):
if self.counter % 15 == 0:
print('buy')
self.send_order(direction='BUY',offset='OPEN',code=bar.name[1],price=bar.open,volume=10000)
if self.counter % 15== 14:
print('sell')
self.send_order(direction='SELL',offset='CLOSE',code=bar.name[1],price=bar.open,volume=10000)
self.counter+=1
if __name__=="__main__":
code = '000001'
s = MyStrategy(
code=code,
frequence="day",
start="2020-05-01",
end="2021-06-05",
strategy_id="test",
)
s.run_backtest()
risk = QA_Risk(s.acc)
perf=QA_Performance(s.acc)
print('【风险指标】')
print(risk.message)
print('【绩效指标】')
print(perf.base_message(perf.pnl))
运行结果 :
【风险指标】
{
'account_cookie': 'test',
'portfolio_cookie': 'default',
'user_cookie': 'USER_NKWeYEZd',
'annualize_return': 0.13,
'profit': 0.14,
'max_dropback': 0.47,
'time_gap': 258,
'volatility': 3.42,
'benchmark_code': '000300',
'bm_annualizereturn': 0.3,
'bm_profit': 0.31,
'beta': 0,
'alpha': 0.13,
'sharpe': 0.02,
'sortino': -0.29,
'init_cash': '957726.48',
'last_assets': '1088020.54',
'total_tax': -11038.9,
'total_commission': -5610.92,
'profit_money': 130294.06,
'assets': [
957726.48087871,
954470.0168438699,
959451.71357725,
961218.7176134,
955085.07339257,
...
}
【绩效指标】
{
'total_profit': 162900.0,
'total_loss': -45000.0,
'total_pnl': 3.62,
'trading_amounts': 17,
'profit_amounts': 11,
'loss_amounts': 6,
'even_amounts': 0,
'profit_precentage': 0.65,
'loss_precentage': 0.35,
'even_precentage': 0.0,
'average_profit': 14809.09,
'average_loss': -7500.0,
'average_pnl': 1.97,
'max_profit': 38300.0,
'max_loss': -20000.0,
'max_pnl': 1.92,
'netprofio_maxloss_ratio': 5.9,
'continue_profit_amount': 3,
'continue_loss_amount': 2,
'average_holdgap': '18 days 18:21:10.588235294',
'average_profitholdgap': '19 days 00:00:00',
'average_losssholdgap': '18 days 08:00:00'
}
更多推荐



所有评论(0)