先说下tnumprofit函数的作用: 得到指定交易的盈亏数额.
看到其它帖子的介绍说 tnumprofit更适合用于后台程序化交易.但是我实在找不到其它办法了.
我在图表程序化交易时想获得 上次平仓的结果是盈还是亏,如果亏的话 就加仓1手.
示例:
Num:=1;//开仓手数 如果上次平仓结果 为亏损 手数就变为2 继续亏损就变为3 再继续就变为4..直到盈利.
开多:BUY(KD AND HOLDING=0,Num,MARKETR); //开多信号
开空:BUYSHORT(KK AND HOLDING=0,Num,MARKETR); //开空信号
求条件语句写法, 我太笨 ,想了很久都不直到怎么弄.
感谢!
variable:num=1;
if 平多条件 and holding>0 then begin
sell(1,0,market);
if numprofit(1)>0 then num:=1;
if numprofit(1)<0 then num:=num+1;
end
if 平空条件 and holding<0 then begin
sellshort(1,0,market);
if numprofit(1)>0 then num:=1;
if numprofit(1)<0 then num:=num+1;
end
你好 看了你写的条件公式 先谢谢
但是有个问题 因为我使用的系统自带的 止盈止损 ,所以平多 平空条件 一般都起不到作用
有别的办法吗
再想问下 如果是第一次打开软件 第一次使用 if numprofit(1)>0 then num:=1
numprofit(1) 这个取到的是正数还是负数
要看交易的结果是赢是亏,前面的平仓语句就是用来产生交易结果的