如何在盤中量大股技術指標出現買進賣出訊號時通知您?

By | 2019-03-06

有網友想要透過語法,從台股特別報價中的量大股,成交重心股,權值股中,找到五分鐘線技術指標出現買進賣出訊號的個股。我想藉這個題目,跟大家分享一下,在交易語法還沒有上線前,我是怎麼設定進出場的機制的。

首先,我推測網友的想法,舉的例子概念如下

一,挑的標的是今天盤中成交量排名在前面的股票

二,五分鐘K線MACD出現黃金交叉,就進場

三,如果買進之後,五分鐘K線的MACD出現死亡交叉後就平倉。

首先,要在盤中直接符合量大的條件,我的作法是去計算平均每五分鐘的成交量,然後如果這個成交量超過一定的金額就算是屬於有量的股票

假設日均量是一千億,一天有54根五分鐘K,為了好算,除以50,五分鐘的平均量是20億,目前有一千檔比較有量的股票,一檔平均分到200萬,那如果要排進前面的量大股,恐怕要500萬才行。

所以我就把進場腳本撰寫如下

if barfreq<>"Min"or barinterval<>5 then raiseruntimeerror("請把頻率設為五分鐘K");
input: vl(500,"五分鐘均量的下限單位萬");
value1=close*GetField("成交量","D")/10;//當日累計成交值,單位萬元
var:count(0);
if date<>date[1] then 
count=0;
count=count+1;
if value1<>0 then 
value2=value1/count;
//計算出平均每五分鐘的成交值,單位萬元
if value2>vl then begin//五分鐘均量超過下限

input: FastLength(12, "DIF短期期數"), SlowLength(26, "DIF長期期數"), MACDLength(9, "MACD期數");
variable: difValue(0), macdValue(0), oscValue(0),Kprice(0);

MACD(weightedclose(), FastLength, SlowLength, MACDLength, difValue, macdValue, oscValue);

if difValue Crosses Above macdValue then ret=1;

end;

我有用這個腳本去回測,在多頭市場這是可行的

接下來比較麻煩,因為目前沒有支援交易語法,所以要在策略雷達中作交易設定

策略雷達

下單設定

這樣才能直接把單子下出去

或是不要設定下單,直接在警示中心看到觸發的個股名稱再串到下單匣去作手動下單

在出場的部份,則是把因為上面策略觸發而進場的股票,拿去跑下面的腳本

if barfreq<>"Min"or barinterval<>5 then raiseruntimeerror("請把頻率設為五分鐘K");
input: FastLength(12, "DIF短期期數"), SlowLength(26, "DIF長期期數"), MACDLength(9, "MACD期數");
variable: difValue(0), macdValue(0), oscValue(0),Kprice(0);

MACD(weightedclose(), FastLength, SlowLength, MACDLength, difValue, macdValue, oscValue);

if difValue Crosses under macdValue then ret=1;

這樣當MACD翻黑時就可以出場了

未來如果有交易語法,就可以把這一整個結合成一個進出場的策略