以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  [求助]早盘突破高低点  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=48851)

--  作者:证通的曹琴
--  发布时间:2013/2/25 10:07:52
--  [求助]早盘突破高低点

早盘运行大概三十分钟后,取得这个周期的最高点,并画线表示,如果后面有K线的高点比这个高点还高,就取代这个高点并画线,如果后面还有K线比前一个高点还高,又再次取代。。。。。这个怎么表示呢

 


--  作者:jinzhe
--  发布时间:2013/2/25 10:24:05
--  

variable:hh=0;

hh:=valuewhen(time<=093000,high);

if h>hh then hh:=h;

drawsl(h=hh,h,0,20,3);


--  作者:rushtaotao
--  发布时间:2013/2/25 10:30:18
--  

早盘运行大概三十分钟后,取得这个周期的最高点

n1:barslast(date<>ref(date,1));
if n1>30 then HH:hhv(h,n1);

//////////画自己要的线

如果后面有K线的高点比这个高点还高,就取代这个高点并画线

就if H>HH then HH:=H;

//////////

然后画线,您去画线函数里面找 自己要画的线


--  作者:证通的曹琴
--  发布时间:2013/2/25 15:15:30
--  
以下是引用jinzhe在2013-2-25 10:24:05的发言:

variable:hh=0;

hh:=valuewhen(time<=093000,high);

if h>hh then hh:=h;

drawsl(h=hh,h,0,20,3);

要的不是划线。。。

你看下我写的代码

 

前高1:=REF(HIGH,1);
前高2:=REF(HIGH,2);
前低1:=REF(LOW,1);
前低2:=REF(LOW,2);
 
INPUT:NMIN(30,10,60,10);     //求30分钟之后的最低点
INPUT:NOFFSET(3,1,20,1);     //设置参数
INPUT:LOTS(1,1,1000,1);      //设置参数
exittime:=time<150000;
entertime:=time>093000;
CYC:=BARSLAST(DATE>REF(DATE,1))+1;                              
 
 highest:VALUEWHEN(TIME>=90000+NMIN*100,HHV(H,CYC));
 lowest:VALUEWHEN(TIME>=90000+NMIN*100,LLV(L,CYC));
 
buycond:=high>=highest and entertime;
buyprice:=max(open,highest);
 
buyshortcond:=low<=lowest and entertime;
buyshortprice:=min(open,lowest);

 if buycond then begin
  开多: buy(1,1,limitr,buyprice);
 
 end
if holding>0 and buycond then begin
 平多:sell(1,holding,limitr,close);
end 
 
 

 if buyshortcond then begin
   开空:buyshort(1,1,limitr,buyshortprice);
 end
if holding<0  and buyshortcond then begin
   平空:sellshort(1,holding,limitr,close);
end

 

 

我想表达的意思是:看前三十分钟的走势图。主要是看它的最高点跟最低点

当第一次达到最高点的时候开多,然后一直等到他出现一个比这个点还高的点的时候平多。

做空的道理一样。老师你看看这段代码有啥地方不妥。谢了。