以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 高级功能研发区 (http://weistock.com/bbs/list.asp?boardid=5) ---- 软件运行Python数据量多一点就会频繁重启卡死 (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=170326) |
-- 作者:qq代人发帖 -- 发布时间:2019/6/6 9:22:08 -- 软件运行Python数据量多一点就会频繁重启卡死 软件运行Python数据量多一点就会频繁重启卡死 |
-- 作者:Python大王 -- 发布时间:2019/6/6 9:31:57 -- 也就运行了50个股票的120天的日数据,这个数量也不算多的 |
-- 作者:yukizzc -- 发布时间:2019/6/6 9:39:45 -- 测试代码可否发下,我们这边测试下 |
-- 作者:Python大王 -- 发布时间:2019/6/6 10:11:04 -- import pandas as pd import talib from pandas.tseries.offsets import Day def init(context): context.sec_codes=get_blocks(\'A股板块\',2) context.turnover_period1=5 context.turnover_period2=30 def getTrunOver(context): result=[] for i in context.sec_codes: df1=get_turnover_rate(i,1,context.turnover_period1) df2=get_turnover_rate(i,1,context.turnover_period2) def before_trading(context): print (\'before_trading\') print (context.now) getTrunOver(context) # 你选择的品种的数据更新将会触发此段逻辑,例如日或分钟历史数据切片或者是实时数据切片更新。--(必须实现) def handle_bar(context): # 开始编写你的主要的算法逻辑。 #使用buy_open、sell_close等方法下单 #下单示例: #buy_open(context.s1, "Market", volume = 100) # 市价开多 #buy_open(context.s1, "Limit", 25.45, 100) # 限价开多 print (\'now\') print (context.now) # after_trading函数会在每天交易结束后被调用,当天只会被调用一次。 --(选择实现) def after_trading(context): pass # order_status当委托下单,成交,撤单等与下单有关的动作时,该方法就会被调用。---(选择实现) #def order_status(context,order): # pass # order_action当查询交易接口信息时返回的通知---(选择实现) #def order_action(context,type, account, datas) # pass # exit函数会在测评结束或者停止策略运行时会被调用。---(选择实现) #def exit(context): # pass |
-- 作者:Python大王 -- 发布时间:2019/6/6 10:11:49 -- 就是这个get_turnover_rate接口调用会卡死,没有计算换手率的其他方式了么??? |
-- 作者:Python大王 -- 发布时间:2019/6/6 10:30:05 -- 代码已经发过了,请检查一下 |
-- 作者:yukizzc -- 发布时间:2019/6/6 14:26:04 -- 因为中间有一个000022的品种没了所以导致了奔溃,我们后续修正下这个函数问题 |
-- 作者:Python大王 -- 发布时间:2019/6/6 15:14:32 -- 也就是说现在用不了了是吧 |
-- 作者:yukizzc -- 发布时间:2019/6/6 15:46:39 -- 你取有行情的那些品种非下士的都没问题,可以先在软件界面根据成交量排个序,把有行情的加入板块,然后再对此进行计算 |