以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  字符串变量  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=73467)

--  作者:qq代人发帖
--  发布时间:2014/12/23 16:41:53
--  字符串变量
请教:怎么把字符串变量,显示到这里上面?我输出的时候,只能显示数字变量。。却无法显示字符串变量。

图片点击可在新窗口打开查看此主题相关图片如下:2.png
图片点击可在新窗口打开查看

--  作者:jinzhe
--  发布时间:2014/12/23 16:52:27
--  

用drawtext或者drawtextex


--  作者:追逐趋势
--  发布时间:2014/12/23 17:03:10
--  
使用DRAWTEXTEX时,在指标上显示的字符串变量无法随着字符串变量的改变而改变。。

例如
DRAWTEXTEX(1 ,0 ,0 ,0 , pz[r2] );
显示的字符串不会随着PZ[R2]这个变量的变化而变化、


PZ[R2]这个字符串变量是正确的,已经用MSGOUT输出验证过。所以不存在变量 错误的事情。。



[此贴子已经被作者于2014/12/23 17:04:26编辑过]

--  作者:jinzhe
--  发布时间:2014/12/23 17:04:12
--  

pz[r2]这个是数值型还是字符型?

数字型要坐下修改才能放进上面函数里面

DRAWTEXTEX(1 ,0 ,0 ,0 , numtostr(pz[r2],2) );

 


--  作者:追逐趋势
--  发布时间:2014/12/23 17:05:29
--  
是字符串的!
PZ[r2]是
\'rb00\',\'ag00\'之类的字符串变量
[此贴子已经被作者于2014/12/23 17:05:42编辑过]

--  作者:追逐趋势
--  发布时间:2014/12/23 17:11:13
--  
PZ[R2]这个字符串变量是正确的,已经用MSGOUT输出验证过,完全正确。


所以不存在变量 错误的事情。。

但用DRAWTEXTEX(1 ,0 ,0 ,0 , pz[r2] )显示的字符串变量却只显示同一个值。。。
[此贴子已经被作者于2014/12/23 17:12:49编辑过]

--  作者:jinzhe
--  发布时间:2014/12/23 17:17:35
--  
用逐k线计算试试
--  作者:追逐趋势
--  发布时间:2014/12/23 17:24:42
--  
用的就是逐K线模式的。

不然我把代码发给你看看?

--  作者:jinzhe
--  发布时间:2014/12/23 17:30:47
--  
好,贴出来看看
--  作者:追逐趋势
--  发布时间:2014/12/23 17:33:13
--  
VARIABLE:pz[30]=\'abc\';
VARIABLE:cje[30]=0;
//股指和国债不统计,一些小的商品也不统计。。
pz[1]:=\'rb00\';
PZ[2]:=\'AG00\';
PZ[3]:=\'CU00\';
PZ[4]:=\'RU00\';
PZ[5]:=\'RM00\';
PZ[6]:=\'AU00\';
PZ[7]:=\'MA00\';
PZ[8]:=\'M00\';
PZ[9]:=\'J00\';
PZ[10]:=\'I00\';
PZ[11]:=\'L00\';
PZ[12]:=\'TA00\';
PZ[13]:=\'SRX00\';
PZ[14]:=\'P00\';
PZ[15]:=\'PP00\';
PZ[16]:=\'CF00\';
PZ[17]:=\'Y00\';
PZ[18]:=\'JM00\';
PZ[19]:=\'ZN00\';
PZ[20]:=\'ME00\';
PZ[21]:=\'JD00\';
PZ[22]:=\'AX00\';
PZ[23]:=\'FG00\';
PZ[24]:=\'OI00\';
PZ[25]:=\'AL00\';
PZ[26]:=\'PB00\';
PZ[27]:=\'C00\';
PZ[28]:=\'TC00\';
PZ[29]:=\'CS00\';
PZ[30]:=\'BB00\';

for x :=1 to 30 do
BEGIN
cje[x]:=CALLSTOCKEX(pz[x],vtAMOUNT,6,0,100000);
end

zuida:=0;
zuida2:=1;
for x1:=1 to 30 do
begin
zuida:=max(zuida,cje[x1]);
if zuida>zuida2 then begin
sx:=x1;
zuida2:=zuida;
end
end




rr:zuida;
r2:sx;
DRAWTEXTEX(1 ,0 ,0 ,0 , pz[sx] );
MSGOUT(1,STRCAT( STRCAT( numtostr(YEAR,0),numtostr(MONTH,0)),numtostr(day,0)));
MSGOUT(1,pz[sx]);





日线上使用!