以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  求助老师:字符串数字转换拼接  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=161711)

--  作者:忘记密码
--  发布时间:2018/2/27 0:55:35
--  求助老师:字符串数字转换拼接


比如 设置了变量    平仓盈亏5          (实际从1到15 共15个)
如果上次开仓是第5号模块, 现在平仓了,我想把这个盈亏累加到  平仓盈亏5  这个值里面.

现在已经有了5号模块开的多单在手  之后

if   翻空条件7  THEN BEGIN    
  SELL(...)  ;
  BUYSHORT(...);

  开仓类别:=7 ;
  平仓类别:=REF( 开仓类别 ,1) ;   //之前是5号开的仓 则值为5
  平仓盈亏5:=平仓盈亏5+NUMPROFIT;
          //这一行我只想累加  平仓盈亏(平仓类别)  这里即 平仓盈亏5,  该怎么写呢? 字符串数字转换拼接 不成功
END

[此贴子已经被作者于2018/2/27 0:57:03编辑过]

--  作者:FireScript
--  发布时间:2018/2/27 9:31:52
--  
没太明白你的需求,哪里有字符串和数字的转换啊。  你说清楚点啊。
--  作者:忘记密码
--  发布时间:2018/2/27 11:27:39
--  
平仓类别:=REF( 开仓类别 ,1) ;   //之前是5号开的仓 则值为5
  平仓盈亏5:=平仓盈亏5+NUMPROFIT;

就是这2行  如果上一行 \'平仓类别\' 的值 取到5,  
下一行 就把这个5接到\'平仓盈亏\'后面 变成\'平仓盈亏5\', 

如果上一行 \'平仓类别\' 的值 取到11,  
下一行 就把这个11接到\'平仓盈亏\'后面 变成\'平仓盈亏11\', 



[此贴子已经被作者于2018/2/27 11:28:05编辑过]

--  作者:yukizzc
--  发布时间:2018/2/27 13:32:40
--  

平仓盈亏5:=\'平仓盈亏5\'+numtostr(NUMPROFIT,0);

这样加

 

另外字符串是不能直接在图表上输出的,需要用debugfile或者msgout这类输出文本的方式输出平仓盈亏5这个字符


--  作者:FireScript
--  发布时间:2018/2/27 13:39:07
--  
不行的,你改的是变量名称了。这个改不了的。
--  作者:忘记密码
--  发布时间:2018/2/27 13:51:42
--  
老师 , 变量名改不了么?  还是需要用IF  识别到是几 就记录几,写一大堆?

平仓类别:=REF( 开仓类别 ,1) ;   
  平仓盈亏5:=平仓盈亏5+NUMPROFIT;

//如果之前是5号开的仓 则平仓类别值为5,平仓盈亏就累加到 平仓盈亏5 上
//如果之前是7号开的仓 则平仓类别值为7,平仓盈亏就累加到 平仓盈亏7 上

关键是 识别到平仓类别的值X, 下一行只记录 平仓盈亏X  这个变量 ,其他的就不管了.
这个X怎么加到 平仓盈亏 这几个字后面  变成 平仓盈亏X   ?
平仓盈亏X 是一个全局变量, X从1到10共有10个, 分别记录不同类型开仓的盈利.  
只做运算,不做显示.不需要输出.

--  作者:FireScript
--  发布时间:2018/2/27 13:56:22
--  
变量值可以修改,变量名称是不行的。