VeighNa量化社区
你的开源社区量化交易平台
Member
avatar
加入于:
帖子: 5
声望: 0

发现CTA的实际回测引擎文件backtesting.py,位于文件夹:vnpy/app/cta_strategy
该文件夹内另有CTA的实盘引擎在engine.py文件中,觉得功能上两者放一起有些混淆。
为什么不考虑把实际回测引擎backtesting.py放在文件夹:vnpy/app/cta_backtester ?
该文件夹才是回测功能模块所在的地方。

Administrator
avatar
加入于:
帖子: 4548
声望: 325

因为cta_backtester只是个方便使用的GUI外壳,核心逻辑都还是在cta_strategy模块中实现的。

对于进阶用户推荐用Jupyter直接调用backtesting.py里的功能回测,更加灵活。

Member
avatar
加入于:
帖子: 71
声望: 3

用Python的交易员 wrote:

因为cta_backtester只是个方便使用的GUI外壳,核心逻辑都还是在cta_strategy模块中实现的。

对于进阶用户推荐用Jupyter直接调用backtesting.py里的功能回测,更加灵活。

有没有2.0下的jupyter例子?

Member
avatar
加入于:
帖子: 50
声望: 12

from datetime import datetime

from vnpy.app.cta_strategy.backtesting import BacktestingEngine
from vnpy.app.cta_strategy.strategies.atr_rsi_strategy import (
AtrRsiStrategy,
)

engine = BacktestingEngine()
engine.set_parameters(
vt_symbol="rb1910.SHFE",
interval="1m",
start=datetime(2010, 1, 1),
end=datetime(2019, 7, 17),
rate=0.3 / 10000,
slippage=0.2,
size=300,
pricetick=0.2,
capital=1_000_000,
)
engine.add_strategy(AtrRsiStrategy, {})

engine.load_data()
engine.run_backtesting()
df = engine.calculate_result()
engine.calculate_statistics()
engine.show_chart()

© 2015-2022 上海韦纳软件科技有限公司
备案服务号:沪ICP备18006526号

沪公网安备 31011502017034号

【用户协议】
【隐私政策】
【免责条款】