本文为旧版实现,仅供学习参考。
https://bigquant.com/wiki/doc/demos-ecdRvuM1TU
\
本文主要分享一个基于Deep Q Network的对于个股的择时策略
本文主要使用的是Deep Q Network。DQN是强化学习的一种方法,结合了Q-learning和深度学习神经网络。
Q-learning是用一张表来记录各个状态下的各个行为的q值,它能记录的状态
更新时间:2024-05-20 00:40
本文内容对应旧版平台与旧版资源,其内容不再适合最新版平台,请查看新版平台的使用说明
新版量化开发IDE(AIStudio):
https://bigquant.com/wiki/doc/aistudio-aiide-NzAjgKapzW
新版模版策略:
https://bigquant.com/wiki/doc/demos-ecdRvuM1TU
新版数据平
更新时间:2024-05-16 02:44
第一次建仓:
按目标比例买入股票,各股票的目标比例相同【比例为A】。
建仓后,下一个调仓日:
其中的第二步也就是多退少补部分应该怎么实现呢?
我现在使用的context.order_target_percent函数偶尔会发生委托数量错误的报错显示,不论是赚的股票还是跌的股票都偶尔会出现委托数量错误的报错
更新时间:2024-05-11 05:33
回测图:
![](/wiki/api/attachments.redirect?id=9ed9f90b-c353-4aff-b4bf-
更新时间:2024-04-25 07:14
交易引擎 M.bigtrader.v9 如何设置,涨停股票不能买入
目前发现涨停股票也可以买入,以及如何设置我在2:20时买入股票不要等很久才能成交,每次多笔,
当天卖出的股票,获取用户资金context.portfolio.cash,显示为未卖出之前的,导致不能当天买入足额其他股票,请问下如何设置
\
更新时间:2024-03-21 10:57
import dai
df = dai.query("""
SELECT date, close, volume, amount
FROM cn_stock_bar1d
WHERE instrument = '000002.SZ'
AND date >= '2022-01-01' and date <= '2022-12-31';
""").df()
为什么会报ModuleNotFoundError: No module named 'MeteorClient'这种错误?
更新时间:2024-01-09 03:38
更新时间:2023-12-22 07:08
更新时间:2023-10-09 06:28
INFO order[14:30:00][id:02a6b5,603992.SHA -4341873@MARKET] 这是什么问题?
更新时间:2023-10-09 06:23
利用算法进行股票量化交易是当今金融市场的一个重要趋势。在国际象棋和围棋等诸多复杂的游戏中,深度强化学习(DRL)智能体都取得了惊人的成绩。深度强化学习的理论同样适用于股票市场的量化决策。本文介绍了同济大学计算机科学与技术系的上海市大学生创新创业训练计划优秀项目:「基于深度强化学习的金融量化策略研究」,解读了如何训练一个 A 股市场的深度强化学习模型,以及回测的绩效表现。
在该项目中,研究者把股票市场的历史价格走势看作一个复杂的不完全信息环境,而智能体需要在这个环境中最大化回报和最小化风险。相比于其他传统机器学习算法,深度强化学习的优势在于对股票交易任务进行马尔可夫决策过程建模,没有将
更新时间:2023-06-13 06:53
每次交易先清空持仓,买入排名前三股票,卖空排名最后三只股票。
运行的时候发现没法买回上次卖空的股票,请帮忙看一下为什么呢?中途打印出来是没问题的。
stock_hold_now = {e.symbol: p.amount
for e, p in context.perf_tracker.position_tracker.positions.items()}
print(today, context.portfolio.cash, stock_hold_now)
#先把已有的持仓清掉
# 如果该股票停牌,则没法成交。因此需要用can_trade方法检查下该
更新时间:2023-06-01 02:13
如何在策略中实现最近10天内买入过的个股不再买入
\
在回测中可以在卖出股票后,把卖出时间保存下来,然后买入时和当天时间进行对比就可以实现。具体可以参照下面的样例,此样例实现了持有股票必须大于n天后才能卖出和买入的股票m天内不再买入两个功能。
https://bigquant.com/experimentshare/fd94a8acc914413ea5185892d7aade09
\
更新时间:2023-06-01 02:13
我有一个深度学习策略,我在主函数中添加了跟踪止损的逻辑没有什么用。因为某只股票达到止损条件会卖出,但是第二天机器学习策略根据算法又会将这只股票买入。所以止损策略不能发挥作用啊。请问各位高手有无办法解决?
更新时间:2023-06-01 02:13
看之前的回答如下:
这里的持仓期指的是建仓期吧?然后每天交易上限是1W? 有点不能理解为什么不一天买完所有股票,而是分为10天买入呢?这种方式有什么好处吗是?
更新时间:2023-06-01 02:13
希望实现每日早盘买入2只股票,各占总仓位的1/4,每天卖出2只股票,各占总仓位的1/4,但是怎么设置都达不到我预期的效果,不知道是不是我哪里设置的有问题,求大神指点..
更新时间:2023-06-01 02:13
一些股票在当天发现信号时但要几天才想买入,想用context.ranker_prediction加一条日期为几天后的数据,这样几天后的回测代码就读到那个股票了,但用append方法加了数据,并没有生效,是不是context.ranker_prediction只能读不能更新? 还有也是想买了股票以后,就在这个数据集更新标记,后面读出,作为补仓依据。
更新时间:2023-06-01 02:13
策略开始没设置不购买st,后来去掉st了,但是持仓里有2个st.如何卖掉呢?
你可以在策略里面增加指定卖出特定股票后,再把策略改回去。
更新时间:2023-06-01 02:13
怎么设置每只股票每次交易的最低买入金额?
更新时间:2023-06-01 02:13
想问一下数据字典中的大中小单的区分标准是怎样的?
另外这个标准是固定的吗
更新时间:2023-06-01 02:13
思路:当一支股票获利10% 有1000股为了保住利润,先卖出500股降低仓位,留下500股扩大利润。
那位大神帮忙写一下回测中的代码。先谢了!!!
\
更新时间:2022-12-20 14:20
我也遇到了这情况,当天买入了预卖出股票
更新时间:2022-12-20 14:20
context.order_value调用时,实际下单金额跟传入金额有正负3%差距,请问是什么原因?
我发现同一天,不同股票,下单相同金额,看回测结果发现金额最多有正负3%左右的差距,这个是什么原因?
调用context.order_value之前我print了value参数,确定是一样的,排除了手续费和滑点(成本价跟开盘价一样)。
下面是一个样例,value参数传入是16.8398万,可是回测结果是
173883.719 (+3.2%差距)
168494.351 (0.05%差距)
163319.581(-3.1%差距)
![{w:100}](/w
更新时间:2022-12-20 14:20
不知道为何我的买入逻辑只有一个,而且明显买入amount应该是100的整数,但是最后一笔买入数量不知为何就不是100整数。有人可以帮忙解答一下吗?谢谢
我买入逻辑如下:
amount = math.floor(cash / current_price / 100) * 100
context.order(context.symbol(instrument), amount)
下载的交易详情数据:
更新时间:2022-12-20 14:20
回测时,买了股票后为什么总资产会变成买股票钱的2倍左右?
下单的方式我试过下面3种,都是这样的结果。
rv = context.order(context.ins, order_num, price, order_type=OrderTyp
更新时间:2022-11-09 01:23
有个疑问哈。
对于daily的回测来说, 策略里经常有 if data.can_trade(asset) then context.order(asset, 10000)。 但问题是,if里判断是今天这个股票是否可交易,到了明天要执行交易的时候,可能股票是停牌的。所以,这个IF THEN有实际价值吗?
这个函数其实没什么用,之前的模版有用到,现在很少用这个函数了。
\
更新时间:2022-11-09 01:23