欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → [求助]stkindi调用问题

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有3462人关注过本帖树形打印复制链接

主题:[求助]stkindi调用问题

帅哥哟,离线,有人找我吗?
dsyang
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:10 积分:0 威望:0 精华:0 注册:2013/12/17 15:17:17
[求助]stkindi调用问题  发帖心情 Post By:2013/12/31 15:33:26    Post IP:59.56.39.217[只看该作者]

1.问题1
sp1:='cu1403'; 
INPUT:dotime(2);
macd_sp1:=stkindi(sp1,'macd.macd1',0,dotime,0);
macd_sp1_1:=stkindi(sp1,'macd.MACD1',0,dotime,-1);
macd_sp1_2:=stkindi(sp1,'macd.MACD1',0,dotime,-2);
 我 的目地是调用,sp1(商品1,可自己选择代码),想取到macd数据5分钟,最后一根,倒数第二根,倒数第三根 的macd.macd1的数据
但是 输出来变成
2013/12/31 15:26:47  -0.#QNAN
2013/12/31 15:26:47  -1.#QNAN
2013/12/31 15:26:47  -0.#QNAN
这个是怎么回事。很多时候 都是 #QNAN
1.问题2
上面的最后一个参数0,-1,-2  是不是表示最后一根,倒数第二根,倒数第三根。
如果是新的一根K线出来,是不是 还是一样表示最后一根,倒数第二根,倒数第三根。

 回到顶部
帅哥哟,离线,有人找我吗?
jinzhe
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2013/12/31 15:40:44    Post IP:58.246.57.26[只看该作者]

输出代码写错了,你输出代码是怎么写的?



金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

 回到顶部
帅哥哟,离线,有人找我吗?
dsyang
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:10 积分:0 威望:0 精华:0 注册:2013/12/17 15:17:17
  发帖心情 Post By:2013/12/31 15:53:12    Post IP:59.56.39.217[只看该作者]

MSGOUT(1,numtostr(macd_sp1_1,5));
MSGOUT(1,numtostr(macd_sp1,5));
MSGOUT(1,numtostr(macd_sp1_2,5));
输出 要看数值是不是我 macd 取出来的值

 回到顶部
帅哥哟,离线,有人找我吗?
dsyang
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:10 积分:0 威望:0 精华:0 注册:2013/12/17 15:17:17
  发帖心情 Post By:2013/12/31 15:53:44    Post IP:59.56.39.217[只看该作者]

上面的最后一个参数0,-1,-2  是不是表示最后一根,倒数第二根,倒数第三根。
如果是新的一根K线出来,是不是 还是一样表示最后一根,倒数第二根,倒数第三根。

 回到顶部
帅哥哟,离线,有人找我吗?
王锋
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:罗宾汉 帖子:11808 积分:20695 威望:0 精华:10 注册:2009/8/18 8:15:13
  发帖心情 Post By:2013/12/31 15:58:20    Post IP:58.246.57.26[只看该作者]

sp1:='cu1403';

金字塔是没有这种品种代码的,你可以按下F2,看看动态牌上的代码是什么样的格式



金字塔—专业程序化软件提供商

金字塔-技术部

-----------------------------------------------------------------------------------------------------

工作时间:周一至周五 08:30 - 17:30   周末及法定节假日休息

Email:service@weistock.com
 回到顶部
帅哥哟,离线,有人找我吗?
RogarZ
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:3534 积分:10003 威望:0 精华:5 注册:2012/5/25 0:00:01
  发帖心情 Post By:2013/12/31 17:08:07    Post IP:180.169.30.6[只看该作者]

仔细阅读下 函数说明  参照函数说明的写法 书写


金字塔—专业程序化交易量化投资平台

产品部

-----------------------------------------------------------

欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com
 回到顶部
帅哥哟,离线,有人找我吗?
dsyang
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:10 积分:0 威望:0 精华:0 注册:2013/12/17 15:17:17
  发帖心情 Post By:2014/1/2 12:05:59    Post IP:59.56.39.217[只看该作者]


macd_sp1:=stkindi(sp1,'macd.macd1',0,dotime,0);
macd_sp1_1:=stkindi(sp1,'macd.MACD1',0,dotime,-1);
macd_sp1_2:=stkindi(sp1,'macd.MACD1',0,dotime,-2);
这个取值的问题,就是要把数据窗口打开才能正确显示,真的太不爽了。如果没有打开数据窗口就显示乱码。这个软件真的要优化一下。我一下子要取5个或10个商品那要打开10个窗口。
把这里面的数据 代入我的定定义函数,算出来的值,都是0,怎么回事啊!我一般用逐K线模式。序列模拟试试也是一样的结果!
csp1:=checkmacd(macd_sp1,macd_sp1_1,macd_sp1_2);
MSGOUT(1,numtostr(csp1,2));
值都是0 ,请问一下是什么问题啊!我都快搞崩溃了!

Function checkmacd(Formula,sn1,sn2,sn3)
    '系统会在逐K线模式解释公式时的每个周期都会调用此函数一遍,因此设计时应该注重程序的执行效率,不要重复的执行一些没必要的代码
    checkmacd=0
    if sn1>0 and sn2<0 then checkmacd=1
    if sn1>0 and sn2>0 and sn3<0 then checkmacd=1
    if sn1<0 and sn2>0 then checkmacd=-1
    if sn1<0 and sn2<0 and sn3>0 then checkmacd=-1
    

End Function


 回到顶部
帅哥哟,离线,有人找我吗?
jinzhe
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2014/1/2 13:08:28    Post IP:58.246.57.26[只看该作者]

sp1:='cu1403'; 

改成

sp1:='cu03';



金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

 回到顶部
帅哥哟,离线,有人找我吗?
dsyang
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:10 积分:0 威望:0 精华:0 注册:2013/12/17 15:17:17
  发帖心情 Post By:2014/1/2 14:21:31    Post IP:61.241.200.37[只看该作者]

这个早改了。数据也能取得到了

sp1:='cu1403'; 

改成

sp1:='cu03';


 回到顶部
帅哥哟,离线,有人找我吗?
dsyang
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:10 积分:0 威望:0 精华:0 注册:2013/12/17 15:17:17
  发帖心情 Post By:2014/1/2 14:22:24    Post IP:61.241.200.37[只看该作者]

现在是这个问题了!


macd_sp1:=stkindi(sp1,'macd.macd1',0,dotime,0);
macd_sp1_1:=stkindi(sp1,'macd.MACD1',0,dotime,-1);
macd_sp1_2:=stkindi(sp1,'macd.MACD1',0,dotime,-2);
这个取值的问题,就是要把数据窗口打开才能正确显示,真的太不爽了。如果没有打开数据窗口就显示乱码。这个软件真的要优化一下。我一下子要取5个或10个商品那要打开10个窗口。
把这里面的数据 代入我的定定义函数,算出来的值,都是0,怎么回事啊!我一般用逐K线模式。序列模拟试试也是一样的结果!
csp1:=checkmacd(macd_sp1,macd_sp1_1,macd_sp1_2);
MSGOUT(1,numtostr(csp1,2));
值都是0 ,请问一下是什么问题啊!我都快搞崩溃了!

Function checkmacd(Formula,sn1,sn2,sn3)
    '系统会在逐K线模式解释公式时的每个周期都会调用此函数一遍,因此设计时应该注重程序的执行效率,不要重复的执行一些没必要的代码
    checkmacd=0
    if sn1>0 and sn2<0 then checkmacd=1
    if sn1>0 and sn2>0 and sn3<0 then checkmacd=1
    if sn1<0 and sn2>0 then checkmacd=-1
    if sn1<0 and sn2<0 and sn3>0 then checkmacd=-1
    

End Function


 回到顶部
总数 14 1 2 下一页