『最佳拍檔』智能決策系統

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 6883|回复: 17

請教掃描程式如何寫?

[复制链接]
发表于 2006-7-27 10:28:38 | 显示全部楼层 |阅读模式

請教各位,如果想掃描一些合乎條件股票應如何?
例如:條件1. 10ma 及50ma在200ma之下
         條件2. 10ma 穿50ma
       條件3. macd穿零線 或 RSI 穿50中軸線

另請教macd黃金差又點寫??

发表于 2006-7-27 18:05:11 | 显示全部楼层

You may use "The Explorer" function:

In col A (條件1):

mov(C,10,S)<mov(C,200,S) AND
mov(c,50,S)<mov(C,200,S)

In col B (條件2):

cross(mov(c,10,S),mov(c,50,S))


In col C (條件3):

cross(macd(),0) or
cross(rsi(14),50)

In filter column:
col A =1 and
col B =1 and
col C =1

But the result will probably screened out most of the stocks if not all.  The reason is that the 條件2 and 條件3 have to occur on the same day for the stocks to be picked by the screening.

Alternatively,  instead of using "cross" function, you may consider using a less rigid conditions such as

mov(C,10,S)>mov(c,50,S) in 條件2.  And same argument applies to 條件3.

Hope this is helpful to you.

 楼主| 发表于 2006-7-27 20:37:38 | 显示全部楼层
Loyan,我跟你的程式寫入,
但到Fiter寫完col A =1 and col B =1 and col C =1,之後按OK掣
但卻說這是This is not a recognized name, constant or operator.
不知我錯在那裏?!

另col name欄是否要填一個名稱?
发表于 2006-7-27 21:02:08 | 显示全部楼层

There should be no space "col" and "A" etc.  My mistake.   Or you can simply put:

colA And colB And colC

发表于 2006-7-28 00:18:13 | 显示全部楼层

davidtkm,

比個四合一你玩下 !

報告中 1.000  代表有所須要訊號,   0.000 代表沒有所須要訊號 !

這個可以一次過看到有沒有訊號, 同時於某些股票出現 !

  
Exploration notes  
  
Col A: MOV   If(Mov(C,200,S) > Mov(C,10,S) AND Mov(C,200,S) >Mov(C,50,S),1,0) 
Col B: MA X              If(Cross(Mov(C,10,S),Mov(C,50,S)),1,0) 
Col C: MACD X0        If(Cross(MACD(),0),1,0) 
Col D: RSI X             If(Cross(RSI(C,14),50),1,0)
Col E: MACD X          if(cross(MACD(),mov(MACD(),9,E)),1,0)
Filter (Mov(C,200,S) > Mov(C,10,S) AND Mov(C,200,S) > Mov(C,50,S) ) OR
                Cross(Mov(C,10,S),Mov(C,50,S)) OR
                Cross(MACD(),0) OR Cross(RSI(C,14),50)
                OR Cross(MACD(),Mov(MACD(),9,E))

[ Last edited by MatthewAY on 2006-7-29 at 10:34 PM ]

Scan20060727_01.gif
Scan20060727_02.gif
 楼主| 发表于 2006-7-29 21:07:07 | 显示全部楼层
MatthewAY,
謝謝你的4合1程式!
但當在MAX If(cross(MACD(),mov(MACD(),9,E),1,0)裏
按OK後彈出End of function ')' expected這句,
不知那裏出問題??
发表于 2006-7-29 21:59:34 | 显示全部楼层

Originally posted by davidtkm at 2006-7-29 09:07 PM:
MatthewAY,
謝謝你的4合1程式!
但當在MAX If(cross(MACD(),mov(MACD(),9,E),1,0)裏
按OK後彈出End of function ')' expected這句,
不知那裏出問題??


唔知你是否指 :
Col B: MA X              If(Cross(Mov(C,10,S),Mov(C,50,S)),1,0)      

還是:
Col E: MACD X          if(cross(MACD(),mov(MACD(),9,E)),1,0)


不過依你列出的公式來看, 只是漏了一個括號而已 !
If(cross(MACD(),mov(MACD(),9,E)),1,0)

應該說是我打漏了個括號 ~~~ sorry ! sorry ! 

[ Last edited by MatthewAY on 2006-7-29 at 10:32 PM ]

 楼主| 发表于 2006-7-30 15:51:45 | 显示全部楼层
MatthewAY多謝,解決了!
另請問MACD或RSI 此類指標的背馳信號,
掃描程式是否很複雜?!
发表于 2006-8-1 04:42:47 | 显示全部楼层

Originally posted by davidtkm at 2006-7-30 03:51 PM:
MatthewAY多謝,解決了!
另請問MACD或RSI 此類指標的背馳信號,
掃描程式是否很複雜?!

的確複雜 !  不過是設計上的複雜, 因為你要先定位, 如何為之背馳 !?

我試過網上一些編寫方法, 但發覺效果不佳,

然後我便自己想想辦法, 後來想到只要先定位, 然後再取高位,

再取前一個同一條件的點, 便可以對比到是否背馳,

這個於以前課程, 我都有試過教授, 以下兩條 Explorer 程式:

Matthew - MACD divergence +C
{MACD 兩高峰成下跌勢, 但價位成上升勢, 形成背馳}
nMACD:=Cross(Mov(MACD(),9,E),MACD());
nMACD1:=ValueWhen(1,nMACD,HHV(MACD(),5) );
nMACD2:=ValueWhen(2,nMACD,HHV(MACD(),5) );
req1 := nMACD AND nMACD1 < nMACD2;
nClose2:= ValueWhen(2,nMACD,HHV(C,10));
req2:=If(nMACD,nClose2 < HHV(C,10),0);
req1 AND req2

 

Matthew - MACD divergence -C
{MACD 兩底峰成上升勢, 但收市價位成下跌勢, 形成背馳}
nMACD:=Cross(MACD(),Mov(MACD(),9,E));
nMACD1:=ValueWhen(1,nMACD,LLV(MACD(),5) );
nMACD2:=ValueWhen(2,nMACD,LLV(MACD(),5) );
req1 := nMACD AND nMACD1 > nMACD2;
nClose2:= ValueWhen(2,nMACD,LLV(C,10));
req2:=If(nMACD,nClose2 > LLV(C,10),0);
req1 AND req2


用相同方法, 先定位你想要的效果, 假設我要 70 以上的RSI 兩高峰成下跌勢,
及 30 以下的RSI 兩低峰成上升勢, 另外再做出以下兩條 Explorer 程式:

Matthew - RSI divergence +C

{RSI 兩高峰成下跌勢, 但價位成上升勢, 形成背馳}
nRSI:=Cross(70,RSI(14));
nRSI1:=ValueWhen(1,nRSI,HHV(RSI(14),5) );
nRSI2:=ValueWhen(2,nRSI,HHV(RSI(14),5) );
req1 := nRSI AND nRSI1 < nRSI2;
nClose2:= ValueWhen(2,nRSI,HHV(C,10));
req2:=If(nRSI,nClose2 < HHV(C,10),0);
req1 AND req2


Matthew - RSI divergence -C
{RSI 兩低峰成上升勢, 但收市價位成下跌勢, 形成背馳}
nRSI:=Cross(RSI(14),30);
nRSI1:=ValueWhen(1,nRSI,LLV(RSI(14),5) );
nRSI2:=ValueWhen(2,nRSI,LLV(RSI(14),5) );
req1 := nRSI AND nRSI1 > nRSI2;
nClose2:= ValueWhen(2,nRSI,LLV(C,10));
req2:=If(nRSI,nClose2 > LLV(C,10),0);
req1 AND req2


定位方法可以你自己再設計 !
不過不要太相信背馳的成效, 很多時都不太準確 !

 楼主| 发表于 2006-8-1 09:14:44 | 显示全部楼层
Matthew,Thanks!:
請問式中(MACD(),5)中",5"其實是代表甚麼?
另同意背馳不能太信,因背馳可以再背馳!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|『最佳拍檔』智能決策系統

GMT+8, 2024-6-17 05:18 , Processed in 0.179958 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表