以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  [求助]如何编写以下内容  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=52725)

--  作者:d
--  发布时间:2013/6/3 8:03:39
--  [求助]如何编写以下内容
如果上笔盈利,这笔的开仓数为上笔的2倍,若一直盈利,就一直是上笔的2倍无限制。
如果上笔亏损,这笔开仓数为1,如果编写?

--  作者:jinzhe
--  发布时间:2013/6/3 9:42:30
--  
这个写过很多次了,搜索下论坛吧
--  作者:D
--  发布时间:2013/6/3 9:46:19
--  
就是找不到才发问的,麻烦给个链接!
--  作者:jinzhe
--  发布时间:2013/6/3 9:51:22
--  

variable:n=1;//n是下单手数,写在开仓语句中

if 平仓语句 and 持仓判断 and openprofit<0 then begin

平仓语句;

n:=1;

end

 

if 平仓语句 and 持仓判断 and openprofit>0 then begin

平仓语句;

n:=n*2;

end


--  作者:D
--  发布时间:2013/6/3 12:12:17
--  
这个试过还是有问题,开仓手数在亏损的时候虽然归1了,但是再开仓的时候不是从1开始算起,
而是之前累计的开仓手数*2.不符合设计,应该是从1*2开始的

--  作者:jinzhe
--  发布时间:2013/6/3 13:43:35
--  
把你全部代码贴上来,我本地验证一下
--  作者:D
--  发布时间:2013/6/3 14:46:06
--  
以下是举例,测试结果并未达到要求

//策略:唐奇安通道
//类型:皆可
//版本:1.0
//修订时间:2012.11.3
//Designed By Rogarz
 
//中间变量
INPUT:X(20,1,100,1),nmin(10,1,100,1);
variable:n=1;//n是下单,写在开仓语句中
X周期高点:=ref(hhv(h,X),1);//X是参数,自行调整
X周期低点:=ref(LLV(L,X),1);
开仓时间:=time>opentime(1) and time<closetime(0)-nmin*100;
平仓时间:=time>=closetime(0)-nmin*100;
{nmin为参数,closetime(0)-nmin*100表示 收盘时间-提前N分钟 N由nmin控制}
 
//交易条件:
开多平空条件:=C>X周期高点 and 开仓时间 and holding<=0;
开空平多条件:=C<X周期低点 and 开仓时间 and holding>=0;
//交易系统
收盘平空:sellshort(平仓时间 and holding<0,0,thisclose);

if 开多平空条件 and holding<0 and openprofit<0 then begin
sellshort(1,0,limitr,X周期高点);
n:=1;
end
 
if 开多平空条件 and holding<0 and openprofit>0 then begin
sellshort(1,0,limitr,X周期高点);
n:=n*2;
end


开空:buyshort(开空平多条件 and holding=0,n,limitr,X周期低点);

--  作者:jinzhe
--  发布时间:2013/6/3 15:11:25
--  
从图表信号来看,已经是归为1的了
--  作者:D
--  发布时间:2013/6/3 15:27:20
--  
没有盈利累积加仓效果,例如连盈利4次,开仓数应为1.2.4.8.但是实际上连赢几次都没有加仓

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20130603152616.jpg
图片点击可在新窗口打开查看