以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  如何在模型内显示品种名称和代码  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=146033)

--  作者:sdkj2000
--  发布时间:2017/1/6 10:27:36
--  如何在模型内显示品种名称和代码
SENDMAIL(DQB1=1 AND DATATYPE=6,aaaa@126.com,STKNAME,\'日线爆多\');
       STKLABEL或STKNAME用在发邮件函数中,在邮件里能够显示品种名称或代码。可是如何在本模型内显示品种名称或者代码呢?直接使用的话都是显示10000.请教下怎么在模型内显示品种名称或者品种代码。
       我的目的是取得品种的保证金率,好像无法直接取得,就先取得品种代码,然后按照代码做个表,在表里取数,保证金变的时候再修改这个表。   


--  作者:jinzhe
--  发布时间:2017/1/6 10:30:31
--  

用drawtext来显示

 

drawtext(islastbar,high,stklabel);

类似这样的写法来显示


--  作者:sdkj2000
--  发布时间:2017/1/6 11:49:38
--  
drawtext(islastbar,high,stklabel);能把结果显示在固定位置,那么如何在公示内调用这个结果?
--  作者:sdkj2000
--  发布时间:2017/1/6 12:04:43
--  
drawtext
取得品种代码。
用法:
STKLABEL(),将返回当前品种的代码,例如深发展A将返回"000001"。
所属函数组:字符串函数。
以上是函数列表里面的注释,例程中函数返回000001.我的目标就是这个函数如何表达才能得到这个“000001”。用”STKLABEL”直接表达输出结果都是100000(无论在哪个品种里)。

--  作者:jinzhe
--  发布时间:2017/1/6 13:15:31
--  

因为这是字符型函数,要用数字型的,需要转换

strtonum(stklabel)

这样就能转换了


--  作者:sdkj2000
--  发布时间:2017/1/6 13:29:52
--  
在商品期货里面,strtonum(stklabel)的返回值都是“0”,好像没法用。比如说商品期货白银指数的代码是AG13,我怎么样才能在公式里面得到AG13这个结果,然后再用这个结果去对应它的保证金率和每手单位等。
--  作者:jinzhe
--  发布时间:2017/1/6 13:34:21
--  

直接用stklabel啊,这个是字符型的数据,你一定要强行转换成数字型再去判断?

字符型判断方法:

stricmp(stklabel,\'ag13\')=0

这个判断结果成立就表示当前合约是ag13

 

[此贴子已经被作者于2017-1-6 13:34:30编辑过]

--  作者:sdkj2000
--  发布时间:2017/1/6 13:44:23
--  
ZJY:STKLABEL;
直接用是这么用的么?不论那个品种,这个函数的返回值都是1000000.我开始就是这么用的,感觉不对才来请教的。


--  作者:jinzhe
--  发布时间:2017/1/6 14:00:59
--  

不能直接用,我上面说过用drawtext来看结果

然后用stricmp这一系列的字符型函数来做计算