发表于:2008-08-06 04:33只看该作者
2楼
#property indicator_chart_window
datetime NextTime=0;
extern int line_NO = 0;
bool dn(int i) {
if(High<= ObjectGetValueByShift( ObjectName(line_NO),i)) return(true);
else return(false);
}
bool up(int i) {
if(Low>= ObjectGetValueByShift( ObjectName(line_NO),i)) return(true);
else return(false);
}
int start() {
if(ObjectGetValueByShift(ObjectName(line_NO),0)==0) return(0);
if( Time[0]>NextTime ) {
if(up(2) && up(1) && !up(0)) Alert(Symbol(),"向下突破,趋势线",line_NO,"=",ObjectGetValueByShift(ObjectName(line_NO),0));
if(dn(2) && dn(1) && !dn(0)) Alert(Symbol(),"向上突破,趋势线",line_NO,"=",ObjectGetValueByShift(ObjectName(line_NO),0));
NextTime=Time[0];
}
return(0);
}
如果图上有多条趋势线,需要设置欲报警的趋势线编号,第1条为0,第二条为1,以此类推...
3楼
波动心不动,心动波不动,心动波也动!
4楼
秃鹫老大,我已经测试了,很不错,谢谢!
不知道是否能够改良使用2-3条趋势线,因为很多时候行情是区间或者是三角.......
无论如何,再次感谢........
波动心不动,心动波不动,心动波也动!
发表于:2008-08-07 15:37只看该作者
5楼
消除了条数限制。但线条种类很多,除了趁势线以外,不知道对别种线条还能不能起作用
#property indicator_chart_window
int lines = 0;
datetime NextTime=0;
int init() {
lines= ObjectsTotal(2);
return(0);
}
double line_val(int line_No,int i) {
return(ObjectGetValueByShift( ObjectName(line_No),i));
}
int start() {
if(lines==0) return(0);
if( Time[0]>NextTime ) {
for(int no=0;no=line_val(no,1) && Low[0]0) {
Alert(Symbol(),"下穿趋势线",no,"=",line_val(no,0));
NextTime=Time[0];
}
if(High[1]<=line_val(no,1) && High[0]>line_val(no,0) && line_val(no,0)>0) {
Alert(Symbol(),"上穿趋势线",no,"=",line_val(no,0));
NextTime=Time[0];
}
}
}
return(0);
}
[ 本帖最后由 秃鹫 于 2008-8-7 23:40 编辑 ]
6楼
波动心不动,心动波不动,心动波也动!
7楼
嗯,只是有个问题,消除了条数限制,那么如何知道是突破那一条趋势线啊.........
波动心不动,心动波不动,心动波也动!