以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (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=183639)

--  作者:jia7632752
--  发布时间:2020/12/27 15:07:20
--  请问浮盈加仓怎样编程?谢谢
请问浮盈加仓怎样编程?如浮盈总资金1%时,加仓一次,加仓手数是首次建仓手数的一半(如首次建仓20手,加仓10手)。再次浮盈总资金1%(浮盈总资金2%)时,再次加仓,加仓手数是上次加仓手数的一半(如上次加仓10手,这次加仓5手)。以此类推,最多加仓4次。
请问怎样编程?谢谢!

--  作者:FireScript
--  发布时间:2020/12/28 9:15:01
--  
 以此为例吧:

input:n(9,1,100,10),p1(3,2,40,4),p2(3,2,40,4);//参数设置
RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
K:SMA(RSV,P1,1);
D:SMA(K,P2,1);
J:3*K-2*D,NODRAW;
kdjjc:cross(k,d),NODRAW;//kdj金叉
kdjsc:cross(d,k),NODRAW;

buy(holding=0 and kdjjc,1,market);
sell(kdjsc and c>o,holding,market);

fdyk:OPENPROFITPER;//输出显示下浮动盈亏

//定义全局变量,用来计算加仓次数
variable:x=0;


if x<3 and OPENPROFITPER>=1 and FLOOR(OPENPROFITPER)>x and holding>0 then
begin
加仓:buy(1,1,market);
x:=x+1;
end

if  holding=0 then x:=0;//平仓之后全局变量重置为0



--  作者:jia7632752
--  发布时间:2020/12/28 13:20:10
--  
谢谢
--  作者:jia7632752
--  发布时间:2020/12/28 13:36:39
--  
谢谢!请问怎样让加仓手数编程成上次加仓手数的一半呢?如上次加仓手数10手,这次加仓手数计算成5手