Code Monkey home page Code Monkey logo

rqalpha's Introduction

RQAlpha

https://raw.githubusercontent.com/ricequant/rq-resource/master/rqalpha/logo.jpg

GitHub Actions status for master branch https://coveralls.io/repos/github/ricequant/rqalpha/badge.svg?branch=master Documentation Status PyPI Version Python Version Support PyPI - Downloads

RQAlpha 从数据获取、算法交易、回测引擎,实盘模拟,实盘交易到数据分析,为程序化交易者提供了全套解决方案。

仅限非商业使用。如需商业使用,请联系我们:[email protected]

RQAlpha 具有灵活的配置方式,强大的扩展性,用户可以非常容易地定制专属于自己的程序化交易系统。

RQAlpha 所有的策略都可以直接在 Ricequant 上进行回测和实盘模拟,并且可以通过微信和邮件实时推送您的交易信号。

Ricequant 是一个开放的量化算法交易社区,为程序化交易者提供免费的回测和实盘模拟环境,并且会不间断举行实盘资金投入的量化比赛。

特点

易于使用 让您集中于策略的开发,一行简单的命令就可以执行您的策略。
完善的文档 您可以直接访问 `RQAlpha 文档`_ 或者 Ricequant 文档 来获取您需要的信息。
活跃的社区 您可以通过访问 Ricequant 社区 获取和询问有关 RQAlpha 的一切问题,有很多优秀的童鞋会解答您的问题。
稳定的环境 每天都有会大量的算法交易在 Ricequant 上运行,无论是 RQAlpha,还是数据,我们能会做到问题秒处理,秒解决。
灵活的配置 您可以使用多种方式来配置和运行策略,只需简单的配置就可以构建适合自己的交易系统。
强大的扩展性 开发者可以基于我们提供的 Mod Hook 接口来进行扩展。

快速指引

API 手册

  • API : RQAlpha API 手册

更新记录

Mod

RQAlpha 提供了极具拓展性的 Mod Hook 接口,这意味着开发者可以非常容易的对接第三方库。

您可以通过如下方式使用 安装和使用Mod:

# 查看当前安装的 Mod 列表及状态
$ rqalpha mod list
# 启用 Mod
$ rqalpha mod enable xxx
# 禁用 Mod
$ rqalpha mod disable xxx

以下是目前已经集成的 Mod 列表:

Mod名 说明
sys_accounts 提供了股票、期货的下单 API 实现及持仓模型的实现
sys_analyser 记录每天的下单、成交、投资组合、持仓等信息,并计算风险度指标,并以csv、plot图标等形式输出分析结果
sys_progress 在控制台输出当前策略的回测进度。
sys_risk 对订单进行事前风控校验
sys_scheduler 提供了定时器,即按照特定周期执行指定逻辑的功能
sys_simulation 提供了模拟撮合引擎及回测事件源等模块,为回测和模拟交易提供支持
sys_transaction_cost 实现了股票、期货的交易税费计算逻辑

如果您基于 RQAlpha 进行了 Mod 扩展,欢迎告知我们,在审核通过后,会在 Mod 列表中添加您的 Mod 信息和链接。

关于 4.x 版本数据 bundle 变更的说明

RQAlpha 于近期更新了 4.0.0 版本,4.0.0 添加了大量功能改进和体验改善。

其中一点需要您额外注意:我们在 4.0.0 版本中重构了数据 bundle 的格式,原 3.x 版本的 bundle 已停止更新,您需要更新 RQAlpha 至 4.x 以使用优化过的 bundle。 另外,为了平衡您的使用体验与我们的维护成本,4.x 版本提供下载的 bundle 改为月度更新,但您仍可以使用 RQData 在本地 随时 使用最新数据更新 bundle, 具体操作可查看 RQAlpha 文档

RQData数据本地化服务

为专业投资者提供便利易用的金融数据方案,免除数据整理、清洗及运维的困扰,使投研人员及策略开发者可以更专注于投研及模型开发等关键环节。米筐RQData金融数据API可无缝对接RQAlpha,您只需在策略中import rqdatac,即可通过API本地调用以下数据:

合约信息 **A股、指数、场内场外基金、期货、场内债券的基本合约信息
A股基础信息 交易日、股票拆分和分红、停牌、ST股判断等数据
行情数据 A股2005年至今及实时行情数据(含连续竞价时间段);指数快照行情、历史权重、指数估值指标等
基金数据 基础数据、净值数据、报告披露、持仓数据等
期货、期权和现货数据 全市场期权数据;期货历史及快照行情数据等;期货主力连续合约;期货会员持仓排名及仓单
可转债数据 可转债基础合约;可转债股价、转债导致规模变化、现金等数据
A股上市以来的所有财务数据 基础财务数据、营运、盈利能力、估值等;财务快报及业绩预告、TTM滚动财务数据等;支持财务数据Point in Time API
行业、板块、概念分类 股票资金现金流入流出、换手率
风格因子数据 风格因子暴露度、收益率、协方差和特异风险。(每个交易日8:30开始更新增量数据)
宏观经济数据 存款准备金率、货币供应量、大量宏观因子等数据
电商数据 天猫、淘宝、京东三大平台(日更新)。注:与超对称科技合作提供
舆情数据 雪球与东方财富股吧。注:与数据合作方合作提供

目前RQData已正式上线,支持Python API、Matlab API及Excel插件等多种调取方式,欢迎 免费试用咨询私有化部署

加入开发

获取帮助

关于RQAlpha的任何问题可以通过以下途径来获取帮助

  • 可以通过 索引 或者使用搜索功能来查找特定问题
  • Github Issues 中提交issue
  • RQAlpha 交流群「487188429」

rqalpha's People

Contributors

akulatatama avatar anguswg avatar bingyao avatar bsknight avatar cedricporter avatar comesx4 avatar cuizi7 avatar dongyi avatar handsomu avatar hmn21 avatar hzliu avatar jingyan avatar johnsonchak avatar lin-dongzhao avatar mar-heaven avatar merz9b avatar newmanwang avatar pwei07 avatar qytz avatar tigerlee avatar timgates42 avatar wanghc02 avatar wh1100717 avatar wj-xiao avatar woolenwang avatar yangrq1018 avatar yiksanchan avatar yuhao-x avatar yunchuan-xu avatar zhou-jiajun avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

rqalpha's Issues

是否可以在result.pkl中记录自定义数据?

  1. 现在是否有类似zipline的record函数,在before_trading,handle_bar中调用记录相关指标?

zipline.api.record

zipline.api.record(self, *args, **kwargs)
Track and record values each day.

Parameters:	
**kwargs

The names and values to record.

Notes

These values will appear in the performance packets and the performance dataframe passed to analyze and returned from run_algorithm().
  1. logger.info好像有一些bug,在Spyder中回测时会重复打印.

数据可能存在错误

代码000540.XSHE,时间2015-03-31~2015-04-01,价格变动一倍多。可能是除权等出现的问题。
该数据问题不是个例。

运行策略时出现 AttributeError: 'NoneType' object has no attribute 'mod'

(E:\Quant_Server\Anaconda) E:\Py_Project\moneyQuant\main\model\quant>rqalpha run -f examples/buy_and_hold.py -d bundle/ -s 2016-06-01 -e 2016-12-01 --stock-starting-cash 100000 --benchmark 000300.XSHG --plot

data bundle not found. Run rqalpha update_bundle to download data bundle.
Traceback (most recent call last):
File "e:\quant_server\anaconda\lib\site-packages\rqalpha\main.py", line 120, in run
mod_handler = ModHandler(env)
File "e:\quant_server\anaconda\lib\site-packages\rqalpha\mod\mod_handler.py", line 30, in init
for mod_name in config.mod.dict:
AttributeError: 'NoneType' object has no attribute 'mod'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "e:\quant_server\anaconda\lib\runpy.py", line 184, in run_module_as_main
"main", mod_spec)
File "e:\quant_server\anaconda\lib\runpy.py", line 85, in run_code
exec(code, run_globals)
File "E:\Quant_Server\Anaconda\Scripts\rqalpha.exe_main
.py", line 9, in
File "e:\quant_server\anaconda\lib\site-packages\rqalpha_main
.py", line 43, in entry_point
cli(obj={})
File "e:\quant_server\anaconda\lib\site-packages\click\core.py", line 716, in call
return self.main(*args, **kwargs)
File "e:\quant_server\anaconda\lib\site-packages\click\core.py", line 696, in main
rv = self.invoke(ctx)
File "e:\quant_server\anaconda\lib\site-packages\click\core.py", line 1060, in invoke
return process_result(sub_ctx.command.invoke(sub_ctx))
File "e:\quant_server\anaconda\lib\site-packages\click\core.py", line 889, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "e:\quant_server\anaconda\lib\site-packages\click\core.py", line 534, in invoke
return callback(*args, **kwargs)
File "e:\quant_server\anaconda\lib\site-packages\rqalpha_main
.py", line 133, in run
main.run(parse_config(kwargs, config_path))
File "e:\quant_server\anaconda\lib\site-packages\rqalpha\main.py", line 288, in run
user_exc = create_custom_exception(exc_type, exc_val, exc_tb, config.base.strategy_file)
AttributeError: 'NoneType' object has no attribute 'base'

create instrument by symbols

看到文档中说到可以用symbol来创建instrument, 不一定需要知道code.XSHE这类的id
实际操作中,instruments(['平安银行', '000024.XSHE'])会报错:ERROR: order_book_id 平安银行 not exists!

手续费 佣金平台回测的时候有问题!!

设置如下:
context.commission = 0.
context.slippage = 0.
init_cash = 10000000
落单如下:
在2014年1月1日全仓 买入000001 股票
测试结果如下:(20140101的交易情况)
[Trade({'order_book_id': '000001.XSHE', 'order_id': '50da6d406a614b049717effec75f7f77', 'tax': 0, 'commission': 5, 'amount': 1412400, 'price': 7.0800000000000001, 'date': Timestamp('2014-01-01 15:00:00', offset='D')})]
我的疑问:
commission 等于5 是怎么来的,price如何确定的,amount又是怎样?俩乘起来会不会超过初始资金10000000?????????????

mac install rqalpha has a error

when i execute "rqalpha update_bundle",occurs a error ,like below:

Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.5/bin/rqalpha", line 9, in
load_entry_point('rqalpha==0.0.67', 'console_scripts', 'rqalpha')()
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pkg_resources/init.py", line 542, in load_entry_point
return get_distribution(dist).load_entry_point(group, name)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pkg_resources/init.py", line 2575, in load_entry_point
return ep.load()
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pkg_resources/init.py", line 2235, in load
return self.resolve()
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pkg_resources/init.py", line 2241, in resolve
module = import(self.module_name, fromlist=['name'], level=0)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/rqalpha/init.py", line 3, in
from .strategy import StrategyContext, StrategyExecutor
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/rqalpha/strategy.py", line 25, in
import pandas as pd
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pandas/init.py", line 39, in
from pandas.core.api import *
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pandas/core/api.py", line 10, in
from pandas.core.groupby import Grouper
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pandas/core/groupby.py", line 18, in
from pandas.core.frame import DataFrame
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pandas/core/frame.py", line 39, in
from pandas.core.series import Series
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pandas/core/series.py", line 2944, in
import pandas.tools.plotting as _gfx # noqa
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pandas/tools/plotting.py", line 27, in
import pandas.tseries.converter as conv
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pandas/tseries/converter.py", line 7, in
import matplotlib.units as units
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/matplotlib/init.py", line 1131, in
rcParams = rc_params()
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/matplotlib/init.py", line 975, in rc_params
return rc_params_from_file(fname, fail_on_error)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/matplotlib/init.py", line 1100, in rc_params_from_file
config_from_file = _rc_params_in_file(fname, fail_on_error)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/matplotlib/init.py", line 1018, in _rc_params_in_file
with _open_file_or_url(fname) as fd:
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/contextlib.py", line 59, in enter
return next(self.gen)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/matplotlib/init.py", line 1000, in _open_file_or_url
encoding = locale.getdefaultlocale()[1]
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/locale.py", line 559, in getdefaultlocale
return _parse_localename(localename)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/locale.py", line 487, in _parse_localename
raise ValueError('unknown locale: %s' % localename)
ValueError: unknown locale: UTF-8

rqalpha update_bundle取不到数据

rqalpha update_bundle 命令报错:
raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', error(54, 'Connection reset by peer'))
系统:macOS 10.12.3

rqalpha update_bundle,git pull之后还是有这个提示: data bundle not found. Run `python3 {baseProject}/tools/create_bundle` to download data bundle.

运行时异常
/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6 /DeepLink/LocalRqalphaDevelop/rqalpha/rqalpha run -f buy_and_hold.py -s 2016-01-01 -e 2016-11-20 -o result.pkl --plot
data bundle not found. Run python3 {baseProject}/tools/create_bundle to download data bundle.
data bundle not found. Run python3 {baseProject}/tools/create_bundle to download data bundle.
Traceback (most recent call last):
File "/DeepLink/LocalRqalphaDevelop/rqalpha/rqalpha/main.py", line 149, in run
mod_handler = ModHandler(env)
File "/DeepLink/LocalRqalphaDevelop/rqalpha/rqalpha/mod/mod_handler.py", line 29, in init
for mod_name in config.mod.dict:
AttributeError: 'NoneType' object has no attribute 'mod'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/runpy.py", line 193, in _run_module_as_main
"main", mod_spec)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/DeepLink/LocalRqalphaDevelop/rqalpha/rqalpha/main.py", line 187, in
entry_point()
File "/DeepLink/LocalRqalphaDevelop/rqalpha/rqalpha/main.py", line 45, in entry_point
cli(obj={})
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/click/core.py", line 722, in call
return self.main(*args, **kwargs)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/click/core.py", line 697, in main
rv = self.invoke(ctx)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/click/core.py", line 1066, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/click/core.py", line 895, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/click/core.py", line 535, in invoke
return callback(*args, **kwargs)
File "/DeepLink/LocalRqalphaDevelop/rqalpha/rqalpha/main.py", line 93, in run
main.run(parse_config(kwargs, config_path))
File "/DeepLink/LocalRqalphaDevelop/rqalpha/rqalpha/main.py", line 317, in run
user_exc = create_custom_exception(exc_type, exc_val, exc_tb, config.base.strategy_file)
AttributeError: 'NoneType' object has no attribute 'base'

测试rqalpha run -f multi_rsi.py 策略时出现amount error.

按照RQalpha的指导,测试了rsi策略。
背景:
本地的.rqalpha数据不是最新,但是有2014-1-1 到2016-1-1的数据
步骤:
运行以下命令,将开始回测
cd examples
rqalpha run -f multi_rsi.py -s 2014-01-01 -e 2016-01-01 -o result.pkl --plot
注 : 策略完全就是RQalpha的例子,没有什么改动。
error提示:
[2016-08-31 23:54:59.420540] INFO: 报告: target available cash caled: 290.393311284
[2016-08-31 23:54:59.421540] ERROR: user_log: order_shares 601988.XSHG amount is 0.
测试结果:
结果和RQalpha的例子的结果是一致的。
疑问:
为什么会有这样的日志?INFO和ERROR说的是个什么?这个ERROR会不会影响到测试的准确性?INFO和ERROR在RQalpha项目里那个py文件可以查到?谢谢

window10 环境下编译好rqalpha,无法生成examples

rqalpha examples -d ./ 或 rqalpha examples -d c:\
等在当前目录下或c:都没有创建出examples 目录,而且静默失败,没有任何提示。
不知道我哪里搞错了。

rqalpha 编译过程都ok,而且 rqalpha version 显示 (0,3,0)

生成csv文件是乱码

运行
rqalpha run -f gold_cross.py -s 2014-01-01 -e 2016-01-01 -o result.csv

生成的result.csv文件直接用excel打开是乱码

€�cpandas.core.frame
DataFrame
"q�)乹�}q�(U _metadataq�]q�U�_typq�U dataframeq�U�_dataq�cpandas.core.internals"
BlockManager
"q )乹"
(]q�(cpandas.indexes.base
_new_Index
q cpandas.indexes.base
Index
q
}q�(U�dataq�cnumpy.core.multiarray
_reconstruct
q�cnumpy
ndarray
q�K匲�b嘡q�(K�?�卌numpy
dtype
q�U�O8KK�嘡q�(K�U�|NNNJJK?tb塢q�(U�alphaq�U�annualized_returnsq�U�benchmark_annualized_returnsq�U�benchmark_daily_returnsq�U�benchmark_total_returnsq�U�betaq�U�cashq�U
daily_returnsq�U
"downside_riskq�U�information_rateq�U market_valueq U max_drawdownq!U�pnlq""U�portfolio_valueq#U positionsq$U�sharpeq%U�sortinoq&U�total_commissionq'U"
"total_returnsq(U total_taxq)U�tracking_errorq*U�tradesq+U"
volatilityq etbU�nameq-Nu哛q.cpandas.tseries.index
_new_DatetimeIndex
q/cpandas.tseries.index
DatetimeIndex
q0}q1(U�tzq2NU�freqq3Nh�h�h�K匲�b嘡q4(K�??卙�U�M8KK�嘡q5(K�U�<NNNJJK}(U�nsK�K�K�t唗b塗H�抚B_E��9篆E�綮敊F�C~)鐵�??G�釥R匞�02缬G��妞縃�lw9�I�?蝄I�
歜獻�Y+鼯I�F叽錔�昿I4K�?迋K�3搑袺�?� L�o啬�M�緄YZM�

...

而且我第一次跑那个buy_and_hold例子的时候csv文件还是正常的,这是什么问题?

get_fundamentals

数据查询相关函数

get_fundamentals - 查询财务数据

get_fundamentals(query, entry_date=None, interval=None, report_quarter=True)
获取历史财务数据表格。目前支持**市场超过400个指标,具体请参考财务数据文档。目前仅支持**市场。需要注意,一次查询过多股票的财务数据会导致系统运行缓慢。

貌似下载的日线数据不准了。。。

import os
import datetime
from rqalpha.data import LocalDataProxy

data_bundle_path = os.path.expanduser("~/.rqalpha")
data_proxy = LocalDataProxy(data_bundle_path)
day = datetime.date.today()
dates = data_proxy.history("600325.XSHG", day, 30, "1d", "close")

print dates

pip 安装卡住了

pip install -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com rqalpha
Collecting rqalpha
 Downloading http://pypi.doubanio.com/packages/64/7f/d1d38e13da728987b34ef47ccb71a945f0b829070c034ef0941cb132602f/rqalpha-0.3.0-py2.py3-none-any.whl (195kB)
   100% |████████████████████████████████| 204kB 352kB/s 
Collecting numpy>=1.11.1 (from rqalpha)
 Downloading http://pypi.doubanio.com/packages/7a/c6/035158a65ad8fb8ed606900f0af0f4dd7c4462f9e3d752ad9303cb367771/numpy-1.12.0-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl (4.4MB)
   100% |████████████████████████████████| 4.4MB 102kB/s 
Collecting enum34>=1.1.6 (from rqalpha)
 Downloading http://pypi.doubanio.com/packages/af/42/cb9355df32c69b553e72a2e28daee25d1611d2c0d9c272aa1d34204205b2/enum34-1.1.6-py3-none-any.whl
Collecting dill==0.2.5 (from rqalpha)
 Downloading http://pypi.doubanio.com/packages/47/59/a72f5c3b17647031d426cd3df6874c7e2a8821b007ef4241ee4a59594cb3/dill-0.2.5.tgz (60kB)
   100% |████████████████████████████████| 61kB 86kB/s 
Collecting requests>=2.11.1 (from rqalpha)
 Downloading http://pypi.doubanio.com/packages/7e/ac/a80ed043485a3764053f59ca92f809cc8a18344692817152b0e8bd3ca891/requests-2.13.0-py2.py3-none-any.whl (584kB)
   100% |████████████████████████████████| 593kB 54kB/s 
Collecting attrdict>=2.0.0 (from rqalpha)
Collecting pytest>=2.9.2 (from rqalpha)
 Downloading http://pypi.doubanio.com/packages/c4/17/73e8eda8fbc18b8421a8b16be8bbbb2a461f4d2405f3628beb8e5d2ca567/pytest-3.0.6-py2.py3-none-any.whl (172kB)
   100% |████████████████████████████████| 174kB 31kB/s 
Collecting PyYAML>=3.12 (from rqalpha)
 Downloading http://pypi.doubanio.com/packages/4a/85/db5a2df477072b2902b0eb892feb37d88ac635d36245a72a6a69b23b383a/PyYAML-3.12.tar.gz (253kB)
   100% |████████████████████████████████| 256kB 48kB/s 
Collecting SQLAlchemy (from rqalpha)
 Downloading http://pypi.doubanio.com/packages/da/04/8048a5075d6e29235bbd6f1ea092a38dbe2630c670e73d4aa923a4e5521c/SQLAlchemy-1.1.5.tar.gz (5.1MB)
   100% |████████████████████████████████| 5.1MB 59kB/s 
Collecting pandas>=0.18.1 (from rqalpha)
 Downloading http://pypi.doubanio.com/packages/5f/d6/bbefbb8b46271fe30c3859937b395602ed7c586c42cd413ea9557950d5e9/pandas-0.19.2-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl (11.8MB)
   100% |████████████████████████████████| 11.8MB 79kB/s 
Collecting line-profiler==1.0 (from rqalpha)
 Downloading http://pypi.doubanio.com/packages/20/13/cbe031fc7b6860ee30abd2e53ddb45726028614fc4e71cd43889aa54efdf/line_profiler-1.0.tar.gz (65kB)
   100% |████████████████████████████████| 71kB 36kB/s 
Collecting XlsxWriter>=0.9.6 (from rqalpha)
 Downloading http://pypi.doubanio.com/packages/2b/cd/9cfb38fcf9472f51b9a88761afac69128a6c0c36c4163cb20972ba35f8b8/XlsxWriter-0.9.6-py2.py3-none-any.whl (137kB)
   100% |████████████████████████████████| 143kB 38kB/s 
Collecting typing>=3.5.2.2 (from rqalpha)
 Downloading http://pypi.doubanio.com/packages/b6/0c/53c42edca789378b8c05a5496e689f44e5dd82bc6861d1ae5a926ee51b84/typing-3.5.3.0.tar.gz (60kB)
   100% |████████████████████████████████| 61kB 48kB/s 
Collecting click>=6.6 (from rqalpha)
 Downloading http://pypi.doubanio.com/packages/34/c1/8806f99713ddb993c5366c362b2f908f18269f8d792aff1abfd700775a77/click-6.7-py2.py3-none-any.whl (71kB)
   100% |████████████████████████████████| 71kB 47kB/s 
Collecting matplotlib>=1.5.1 (from rqalpha)
 Downloading http://pypi.doubanio.com/packages/6b/df/c2fe78861c52de30aa93169ee37e0407c9b551ff68042fc1eacc209f7e39/matplotlib-2.0.0-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl (12.8MB)
   100% |████████████████████████████████| 12.8MB 50kB/s 
Requirement already satisfied: six>=1.10.0 in ./.env/lib/python3.6/site-packages (from rqalpha)
Collecting python-dateutil>=2.5.3 (from rqalpha)
 Downloading http://pypi.doubanio.com/packages/40/8b/275015d7a9ec293cf1bbf55433258fbc9d0711890a7f6dc538bac7b86bce/python_dateutil-2.6.0-py2.py3-none-any.whl (194kB)
   100% |████████████████████████████████| 194kB 44kB/s 
Collecting jsonpickle==0.9.4 (from rqalpha)
 Downloading http://pypi.doubanio.com/packages/cc/5e/6ecbd1d27524fcafeed4f6156f47a2a79e31e4bfa383e329e9ba93c7f3ee/jsonpickle-0.9.4.tar.gz (65kB)
   100% |████████████████████████████████| 71kB 43kB/s 
Collecting bcolz==1.1.0 (from rqalpha)
 Downloading http://pypi.doubanio.com/packages/b7/67/508f30257fa40963f5c803b3d874c1d9eb5a7383c7ea48df1f67be435688/bcolz-1.1.0.tar.gz (914kB)
   100% |████████████████████████████████| 921kB 73kB/s 

在Python2环境下运行示例报错rqalpha run -f E:\rqalpha\buy_and_hold.py -s 2013-01-01 -e 2015-01-01 --plot

[Anaconda2] C:\Users\thinkpad>rqalpha run -f E:\rqalpha\buy_and_hold.py -s 2013-01-01 -e 2015-01-01 --plot
Traceback (most recent call last):
File "c:\users\thinkpad\anaconda2\lib\runpy.py", line 162, in run_module_as_main
"main", fname, loader, pkg_name)
File "c:\users\thinkpad\anaconda2\lib\runpy.py", line 72, in run_code
exec code in run_globals
File "C:\Users\thinkpad\Anaconda2\Scripts\rqalpha.exe_main
.py", line 9, in
File "c:\users\thinkpad\anaconda2\lib\site-packages\rqalpha_main
.py", line 44, in entry_point
cli(obj={})
File "c:\users\thinkpad\anaconda2\lib\site-packages\click\core.py", line 722, in call
return self.main(*args, **kwargs)
File "c:\users\thinkpad\anaconda2\lib\site-packages\click\core.py", line 697, in main
rv = self.invoke(ctx)
File "c:\users\thinkpad\anaconda2\lib\site-packages\click\core.py", line 1066, in invoke
return process_result(sub_ctx.command.invoke(sub_ctx))
File "c:\users\thinkpad\anaconda2\lib\site-packages\click\core.py", line 895, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "c:\users\thinkpad\anaconda2\lib\site-packages\click\core.py", line 535, in invoke
return callback(*args, **kwargs)
File "c:\users\thinkpad\anaconda2\lib\site-packages\rqalpha_main
.py", line 115, in run
locale.setlocale(locale.LC_ALL, "en_US.UTF-8")
File "c:\users\thinkpad\anaconda2\lib\locale.py", line 579, in setlocale
return _setlocale(category, locale)
locale.Error: unsupported locale setting

rqalpha update_bundle 命令在window10 有问题

  1. rqalpha update_bundle 并未在~/.rqalpha 下发现对应目录,是不是应有个bundle目录出现
  2. 如果执行 rqalpha update_bundle -d c:\ 该命令是否会删除C目录下文件? 造成系统崩溃? 请检查一下。

rqalpha开发时,源码怎么调试的

改了一些东西,发现不起作用,debug发现跑到lib里面了。应该是运行的时候跑了安装好的rqalpha。

试了试直接调用 main,发现报错。。

Traceback (most recent call last): File "/opt/project/rqalpha/rqalpha/__main__.py", line 33, in <module> from . import StrategyExecutor SystemError: Parent module '' not loaded, cannot perform relative import
请问这个怎么整

down stock's data error!!

Ubuntu16.04 64bit +Anaconda 4.3.8
Rqalpha Installation success,but run " rqalpha update_bundle" result in an error!

ImportError: /home/jianxue/anaconda3/lib/python3.6/site-packages/bcolz/carray_ext.cpython-36m-x86_64-linux-gnu.so: undefined symbol: _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_appendEPKcm

使用simple_macd测试出现现金为负异常

1、用examples/simple_macd.py 进行测试,
时间周期:2014-01-04\2015-01-04
资金默认:100000
回测周期:每日
从代码与复制到ricequant,出现现金为负情况:
image
看算多少股时,context.portfolio.cash/bar_dict[context.s1].close类似此,买多少股的时候没有把交易费用加进去?

Mac Python2.7环境下安装失败

➜  rqalpha git:(master) sudo pip install setuptools 
The directory '/Users/aaa/Library/Caches/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
The directory '/Users/aaa/Library/Caches/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Collecting setuptools
  Downloading setuptools-34.2.0-py2.py3-none-any.whl (389kB)
    100% |████████████████████████████████| 399kB 396kB/s 
Requirement already satisfied: appdirs>=1.4.0 in /Library/Python/2.7/site-packages (from setuptools)
Requirement already satisfied: packaging>=16.8 in /Library/Python/2.7/site-packages (from setuptools)
Requirement already satisfied: six>=1.6.0 in /Library/Python/2.7/site-packages (from setuptools)
Requirement already satisfied: pyparsing in /Library/Python/2.7/site-packages (from packaging>=16.8->setuptools)
Installing collected packages: setuptools
Successfully installed setuptools-34.2.0
➜  rqalpha git:(master) sudo python setup.py install 
Traceback (most recent call last):
  File "setup.py", line 22, in <module>
    from setuptools import (
  File "/Library/Python/2.7/site-packages/setuptools/__init__.py", line 12, in <module>
    import setuptools.version
  File "/Library/Python/2.7/site-packages/setuptools/version.py", line 1, in <module>
    import pkg_resources
  File "/Library/Python/2.7/site-packages/pkg_resources/__init__.py", line 72, in <module>
    import packaging.requirements
  File "/Library/Python/2.7/site-packages/packaging/requirements.py", line 59, in <module>
    MARKER_EXPR = originalTextFor(MARKER_EXPR())("marker")
TypeError: __call__() takes exactly 2 arguments (1 given)

plot图但是报错ValueError: _getfullpathname: embedded null character

运行:
rqalpha run -f C:\Users\91963_000\Desktop\rqalpha\examples\golden_cross.py -s 2013-01-01 -e 2015-01-01 --plot
就报这个错误。查了下网上说是编码问题,目前操作系统win8。
。。。。。想问下是不是我要去装个linux虚拟机来跑,还是说有其他简单的解决方法。

提前感谢

commission设置有问题

在init函数中使用:
context.commission = 0.02
最终的commission是2%,并不是0.02%。

commission.py文件中没有对设定的值再除100

行情文件的读取

请问如何使用自己的行情作为回测依据呢?比如我有外盘数据,也想用于回测,如何自定义产品?

提供 `all_instruments` 方法

我看了代码,好像只有这个方法能拿到所有的股票?既然代码已经实现了,为什么没公开出来呢。

ValueError: could not convert string to Timestamp

/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6 /DeepLink/LocalRqalphaNew/rqalpha/rqalpha/ run -f rsi.py -s 2016-01-01 -e 2016-11-20 -stock-starting-cash 100000 -o result.pkl --plot
Traceback (most recent call last):
File "pandas/tslib.pyx", line 1588, in pandas.tslib.convert_str_to_tsobject (pandas/tslib.c:29408)
File "pandas/src/datetime.pxd", line 135, in datetime._string_to_dts (pandas/tslib.c:95676)
ValueError: Error parsing datetime string "tock-starting-cash" at position 0

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "pandas/tslib.pyx", line 1608, in pandas.tslib.convert_str_to_tsobject (pandas/tslib.c:29833)
File "pandas/tslib.pyx", line 1974, in pandas.tslib.parse_datetime_string (pandas/tslib.c:35434)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/dateutil/parser.py", line 1168, in parse
return DEFAULTPARSER.parse(timestr, **kwargs)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/dateutil/parser.py", line 559, in parse
raise ValueError("Unknown string format")
ValueError: Unknown string format

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/runpy.py", line 193, in _run_module_as_main
"main", mod_spec)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/DeepLink/LocalRqalphaNew/rqalpha/rqalpha/main.py", line 218, in
entry_point()
File "/DeepLink/LocalRqalphaNew/rqalpha/rqalpha/main.py", line 44, in entry_point
cli(obj={})
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/click/core.py", line 722, in call
return self.main(*args, **kwargs)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/click/core.py", line 697, in main
rv = self.invoke(ctx)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/click/core.py", line 1064, in invoke
sub_ctx = cmd.make_context(cmd_name, args, parent=ctx)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/click/core.py", line 621, in make_context
self.parse_args(ctx, args)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/click/core.py", line 880, in parse_args
value, args = param.handle_parse_result(ctx, opts, args)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/click/core.py", line 1396, in handle_parse_result
value = self.full_process_value(ctx, value)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/click/core.py", line 1681, in full_process_value
return Parameter.full_process_value(self, ctx, value)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/click/core.py", line 1365, in full_process_value
value = self.process_value(ctx, value)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/click/core.py", line 1355, in process_value
return self.type_cast_value(ctx, value)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/click/core.py", line 1344, in type_cast_value
return _convert(value, (self.nargs != 1) + bool(self.multiple))
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/click/core.py", line 1342, in _convert
return self.type(value, self, ctx)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/click/types.py", line 38, in call
return self.convert(value, param, ctx)
File "/DeepLink/LocalRqalphaNew/rqalpha/rqalpha/utils/click_helper.py", line 27, in convert
return pd.Timestamp(value)
File "pandas/tslib.pyx", line 407, in pandas.tslib.Timestamp.new (pandas/tslib.c:10447)
File "pandas/tslib.pyx", line 1472, in pandas.tslib.convert_to_tsobject (pandas/tslib.c:27555)
File "pandas/tslib.pyx", line 1611, in pandas.tslib.convert_str_to_tsobject (pandas/tslib.c:29886)
ValueError: could not convert string to Timestamp

Process finished with exit code 1

止损单、止盈单

1、请问如何下止损单和止盈单?
2、如果我设置最大持股天数,到达时间了,以开盘价或者收盘价卖出,是否可以实现?
谢谢解答!

设置允许卖空时,参数类型出错

qq 20160805205441

def init(context):
context.short_selling_allowed = True

File "d:\python\lib\site-packages\rqalpha\strategy.py", line 158, in execute
init(strategy_context)
File "examples/buy_and_hold.py", line 7, in init
context.short_selling_allowed = True
TypeError: short_selling_allowed() takes 1 positional argument but 2 were given

在ricequant平台上策略代码测试可用

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.