Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共5 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:在python引用中去写一些代码,供PEL去调用

1楼
qq代人发帖 发表于:2019/3/8 10:44:06
我是想在python引用中去写一些代码,供PEL去调用,碰到的这个问题
在引用的PYTHON中如果这样写: close = pel_history_bars( 3+1,'close')
                                                          refclose = close[-2:-1].sum() /1   
                                                            context.refclose=refclose
在PEL 中去这样调用 :refclose:GETPYTHONVAL('refclose');
就能够正常显示出来,说明数据CLOSE是读取成功了的。

但是如果在PYTHON引用中如果写成 close = pel_history_bars( 3+1,'close')
                                                             refclose = close[-2]
                                                                context.refclose=refclose

在指标显示的时候就提示这个请问是什么原因呢?

图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看
2楼
yukizzc 发表于:2019/3/8 10:53:32
你要判断len数量长度大于2的,第一根k的时候取不到大于2的数据量所以会有这个问题

    if len(close)>3:
        context.m = close[-2]
    else:
        context.m=0 
[此贴子已经被作者于2019/3/8 10:59:36编辑过]
3楼
zhangt312 发表于:2019/3/8 11:29:56

在python引用中这样写:
close = pel_history_bars( 3+1,'close')

refclose = close[-2:-1].sum() /1     
closelen=len(close) 

context.refclose=refclose
context.closelen=closelen

在PEL中这样写:closelen:GETPYTHONVAL('closelen');
                     refclose:GETPYTHONVAL('refclose');

都能正常显示,读出来的CLOSE长度除了上市的头几天会显示0、2、3、4、4、4、4。。。。。
            也能读出refclose  最多就是上市的第一天显示为0,随后都能读出来,但是如果把那句refclose = close[-2:-1].sum() /1   改成refclose = close[-2],就还是提示出现顶楼那种错误

4楼
yukizzc 发表于:2019/3/8 13:46:38
看我2楼,你要去处理数据长度问题的
5楼
zhangt312 发表于:2019/3/8 14:38:03

谢谢,解决了,
close = pel_history_bars( 3+1,'close')  这句话要用在一只股票所有的Bar里,当它遇到LEN(close)长度不够长的情况下,就会报错,不管你是否把光标移动到上市的头几天 。

共5 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.03320 s, 2 queries.