以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  帮忙看看这个模型  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=25419)

--  作者:大灰狼
--  发布时间:2012/9/12 14:35:07
--  帮忙看看这个模型

A:=HHV(H,5);
B:=LLV(L,5);
MA1:=MA(CLOSE,5);
KD:=CROSS(CLOSE,REF(A,1));
KK:=CROSS(REF(B,1),CLOSE);
IF(KD) THEN
BEGIN
if HOLDING = 0 then
BEGIN  
  buy(1,3,MARKET);
  MSGOUT(1,\'开多\');
end
if holding < 0 THEN
begin
  sellshort(1,HOLDING,MARKET);
  buy(1,3,MARKET);
  MSGOUT(1,\'平空开多\');
end
End

if (KK) then
begin 
if HOLDING = 0 then
begin
buyshort(1,3,MARKET);
MSGOUT(1,\'开空\');
end;
if holding > 0 THEN
begin
SELL(1,HOLDING,MARKET);
buyshort(1,3,MARKET);
MSGOUT(1,\'平多开空\');
end
end;

 

在if1209 品种上,直接单步调试,上穿下穿返回的变量都为True


--  作者:大灰狼
--  发布时间:2012/9/12 14:39:15
--  

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

--  作者:jinzhe
--  发布时间:2012/9/12 14:57:07
--  
这个是有何思路?
--  作者:汪新博
--  发布时间:2012/9/12 15:00:51
--  

思路:穿越前期高点,做多(有多仓不加仓,有空仓,先平空,再做多),反之同理


--  作者:汪新博
--  发布时间:2012/9/12 15:03:18
--  

A:=HHV(H,5); //5周期高点
B:=LLV(L,5); //5周期低点
MA1:=MA(CLOSE,5);//没用
KD:=CROSS(CLOSE,REF(A,1));//收盘价(最新价) 向上穿越5周期高点
KK:=CROSS(REF(B,1),CLOSE);//收盘价(最新价) 向下穿越5周期低点
IF(KD=1) THEN
BEGIN
 if HOLDING = 0 then
 BEGIN   
   buy(1,3,MARKET);
   MSGOUT(1,\'开多\');
 end 
 if holding < 0 THEN
 begin
   sellshort(1,HOLDING,MARKET);
   buy(1,3,MARKET);
   MSGOUT(1,\'平空开多\');
 end
End

if (KK=1) then
begin 
 if HOLDING = 0 then
 begin 
  buyshort(1,3,MARKET);
  MSGOUT(1,\'开空\');
 end;
 if holding > 0 THEN
 begin
  SELL(1,HOLDING,MARKET);
  buyshort(1,3,MARKET);
  MSGOUT(1,\'平多开空\');
 end  
end;


--  作者:汪新博
--  发布时间:2012/9/12 15:12:39
--  
在线等
--  作者:汪新博
--  发布时间:2012/9/12 15:12:50
--  
在线等
--  作者:jinzhe
--  发布时间:2012/9/12 15:16:31
--  

穿越前期高点,做多(有多仓不加仓,有空仓,先平空,再做多),反之同理

 

基本思路是这样的,把条件填进去就行了

 

if 穿越前期高点  then begin

sellshort(holding<0,0,market);

buy(holding=0,1,market);

end

 

if 反向操作 then begin

sell(holding>0,0,market);

buyshort(holding=0,1,market);

end


--  作者:汪新博
--  发布时间:2012/9/12 15:19:36
--  
那我的写法有问题没
--  作者:王锋
--  发布时间:2012/9/12 15:36:33
--  

没有找到具体哪根K线有问题的,经过一些修改,让公式输出划线,其实你自己就很容易通过十字光标的移动查出问题来的

A:HHV(H,5); //5周期高点
B:LLV(L,5); //5周期低点
MA1:=MA(CLOSE,5);//没用
KD:CROSS(CLOSE,REF(A,1)),NODRAW;//收盘价(最新价) 向上穿越5周期高点
KK:CROSS(REF(B,1),CLOSE),NODRAW;//收盘价(最新价) 向下穿越5周期低点
IF(KD=1) THEN
BEGIN
 if HOLDING = 0 then
 BEGIN  
   buy(1,3,MARKET);
   MSGOUT(1,\'开多\');
 end
 if holding < 0 THEN
 begin
   sellshort(1,HOLDING,MARKET);
   buy(1,3,MARKET);
   MSGOUT(1,\'平空开多\');
 end
End

if (KK=1) then
begin 
 if HOLDING = 0 then
 begin
  buyshort(1,3,MARKET);
  MSGOUT(1,\'开空\');
 end;
 if holding > 0 THEN
 begin
  SELL(1,HOLDING,MARKET);
  buyshort(1,3,MARKET);
  MSGOUT(1,\'平多开空\');
 end 
end;