以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  指令和图表变形的疑问  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=54605)

--  作者:michael000
--  发布时间:2013/8/2 17:32:57
--  指令和图表变形的疑问
我在策略里面加入了你们教的止损指令,但我想加多一个标识然它止损后不在同方向重新开仓,但加完后不知为何图表就压缩成很扁不正常了
原指令:
if holding>0 and l<zs then begin
sell(1,1,limitr,min(o,zs));
end;//止损
这时图表显示正常

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20130802172912.jpg
图片点击可在新窗口打开查看
但当把指令加了个buystop的标识后:
if holding>0 and l<zs then begin
sell(1,1,limitr,min(o,zs));
buystop=1;
end;//止损
图表就显示不正常了
图片点击可在新窗口打开查看此主题相关图片如下:qq图片20130802173222.jpg
图片点击可在新窗口打开查看


--  作者:fly
--  发布时间:2013/8/2 17:49:44
--  
改一下
if holding>0 and l<zs then begin
sell(1,1,limitr,min(o,zs));
buystop:=1;
end;//止损

--  作者:michael000
--  发布时间:2013/8/2 18:37:49
--  
哦!对喔,呵呵,刚转用,还不是很会,谢谢!!
--  作者:michael000
--  发布时间:2013/8/2 18:56:58
--  
现在图表的问题解决了,但我想加个控制指令来控制止损后同方向不再开仓好像不起作用,想请教老师是为什么呢
我的具体写法:
公式开头我定义了b=0,s=0,然后开多仓条件是b<>1,空仓是s<>1,然后多仓止损止盈后加上b=1,空仓止损后加上s=1,
请问这样为什么不起作用呢?因为我是刚从tb转过来,tb时这样写是可以的。是不是我定义的不对呢?

--  作者:fly
--  发布时间:2013/8/5 10:44:33
--  

是的,定义的不对.

需要使用全局变量

以下提供简单示例,供您学习参考

 

【金字塔使用技巧】----当日亏损超过5次,则不再交易[图表程序化交易]

 

当日亏损交易次数超过5次,则不再开仓如何写?----图表交易

部分示例(1) :

variable:lossnum=0;// 全局变量,平仓时判断一下是盈利/亏损,若亏损lossnum就加1

cs:=5;//限定一天最多亏损5次

 

ma5:=ma(5,close);

ma20:=ma(20,close);

 

con1:=cross(ma5,ma20);

con2:=cross(ma20,ma5);

if cond2 and holding>0 then

begin

  sell(1,1,thisclose);

  if c<enterprice then lossnum:=lossnum+1;

end

if cond1 and holding=0 and lossnum<cs then  buy(1,1,thisclose);

 

if time=closetime(0) then lossnum:=0;// 商品期货,收盘的同时,lossnum赋值为0

//收盘lossnum不赋值为0,第二天就不再开仓了


--  作者:michael000
--  发布时间:2013/8/5 15:37:14
--  
哦,明白了,谢谢~