以文本方式查看主题

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

--  作者:aizhuxi88
--  发布时间:2019/8/8 14:42:35
--  求助一下加仓模型
老师我的模型简单,就是第一次开仓1手,然后平掉了。  
下一次开仓2手,然后平掉,
下一次开仓3手,然后平掉
下一次开仓4手,然后平掉
下一次开仓5手,然后平掉
以后开仓都是5手,怎么写?


B1 :=CROSS(K,D) ; //多头买入 
B2 :=CROSS(D,K) ; //多头卖出
B1开多;
B2,平多

这是源码。

--  作者:FireScript
--  发布时间:2019/8/8 14:56:16
--  
 
B1 :=CROSS(K,D) ; //多头买入 
B2 :=CROSS(D,K) ; //多头卖出
VARIABLE:ss:=1;

if b1 and holding=0 then
begin
buy(holding=0,ss,market);    //开多
end


if b2 and holding>0 then
begin
sell(holding>0,holding,market);    //平多
ss:=if(ss<5,ss+1,ss);
end

然后你开平条件代码自行补全下。

--  作者:aizhuxi88
--  发布时间:2019/8/8 15:08:12
--  
 老师开平条件我自己加,就这些就能 实现加仓了吗?


B1 :=CROSS(K,D) ; //多头买入 
B2 :=CROSS(D,K) ; //多头卖出

VARIABLE:ss:=1;

if b1 and holding=0 then 
begin 
buy(holding=0,ss,market);    //开多
end 


if b2 and holding>0 then 
begin 
sell(holding>0,holding,market);    //平多
ss:=if(ss<5,ss+1,ss);
end 

--  作者:FireScript
--  发布时间:2019/8/8 15:36:36
--  
 是的。逻辑是符合的。