以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  怎么限制开仓次数  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=61875)

--  作者:netfox
--  发布时间:2014/2/20 18:16:41
--  怎么限制开仓次数

holding 不能用,因为用 c2:=cash(1)/10000; 这样来确定开仓数目了

  所以本来的 abs(holding)<10  就不可以用了

 

for i:=1 to 1 do
BEGIN
c2:=cash(1)/10000;
开空:=ref(KK,1);
buyshort(开空 ,c2,limitr,open); // 开空代码
end

 

这样每次信号“开空” 出现就会执行1次, 我通过限制成  abs(holding)<10  可以控制开仓次数,只要大于10就不会继续交易

 

现在改成c2:=cash(1)/10000; 自动算钱后就无法控制开仓次数了 ,开仓只要开3次要怎么写?

 

在就是是不是REF最好放在 for上面才能避免程序风险?


--  作者:王锋
--  发布时间:2014/2/20 18:45:56
--  

你在FOR循环里加交易语句是没效果的,一行语句只能执行一次的.

除非你用后台交易


--  作者:netfox
--  发布时间:2014/2/20 19:00:08
--  
以下是引用王锋在2014/2/20 18:45:56的发言:

你在FOR循环里加交易语句是没效果的,一行语句只能执行一次的.

除非你用后台交易

 那开仓3次意思是改结构?  写3个IF来判定是否开了3次?


--  作者:jinzhe
--  发布时间:2014/2/21 9:20:54
--  重新定于一个金叉 如何表示

图表用全局变量来记录下单次数

variable:n=0;

if n<3 and 开空条件  then begin

    buyshort.....;

    n:=n+1;

end

 

if 重置变量条件 then n:=0;

 

后面要加上一条判断条件让n重置变量,不然n的值会在下单3次之后不再变化


--  作者:netfox
--  发布时间:2014/2/21 10:57:34
--  
以下是引用jinzhe在2014/2/21 9:20:54的发言:

图表用全局变量来记录下单次数

variable:n=0;

if n<3 and 开空条件  then begin

    buyshort.....;

    n:=n+1;

end

 

if 重置变量条件 then n:=0;

 

后面要加上一条判断条件让n重置变量,不然n的值会在下单3次之后不再变化

 

 

 

3Q 学会了

[此贴子已经被作者于2014/2/21 10:58:02编辑过]