以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  高级功能研发区  (http://222.73.7.161/bbs/list.asp?boardid=5)
----  py引用的问题  (http://222.73.7.161/bbs/dispbbs.asp?boardid=5&id=175380)

--  作者:打盹的小和尚
--  发布时间:2020/4/6 23:09:06
--  py引用的问题
import talib as ta

open = pel_history_bars(200 ,\'open\')
high = pel_history_bars(200 ,\'high\')
low = pel_history_bars(200 ,\'low\')
close = pel_history_bars(200 ,\'close\')
   
context.star = ta.CDLDOJISTAR(open,high,low,close)

将star的值引用到pel策略上结果全是0,应该返回0、100或-100,我想应该是数组不能直接做参数传递的原因吧?那该如何传递呢?

--  作者:yukizzc
--  发布时间:2020/4/7 9:31:15
--  

不能返回数组,必须是单值的数据

本身返回给pel的时候就是每一根k线有一个值,你参考范例里面传回最后一个值[-1]


--  作者:打盹的小和尚
--  发布时间:2020/4/7 10:46:49
--  
尝试了,不行没有效果
--  作者:yukizzc
--  发布时间:2020/4/7 11:15:24
--  
context.star = high[-1]
 
你看下这样能传不

--  作者:打盹的小和尚
--  发布时间:2020/4/7 11:36:24
--  
这是可以的
--  作者:yukizzc
--  发布时间:2020/4/7 12:05:52
--  

那你去看下你的ta计算结果是什么,是一个一维的列表吗,这个传值只能传固定的数值

这个返回值不是想当然python那些数据格式都能传的

 


--  作者:打盹的小和尚
--  发布时间:2020/4/7 14:16:02
--  
将ta计算的结果,进行[-1],再转换为float类型就能正常引用了