Author Archives: 發財橘子

以加權指數第一根 30分鐘線做期指當沖的交易策略

oma1在推廣XS的時候,常踫到一些朋友說:”你不要介紹那些很複雜,聽都聽不懂的策略,我要的不多,每天賺個一兩千元,甚至賺個便當錢就很滿意了。”

其實賺便當錢的策略不是沒有,還不止一個,可是這種策略手腳要快,不然一踫到變盤,變不到便當錢,可能還要虧掉好幾個月的生活費。

不過如果懂得停利停損,玩起來還頗愉快。

今天先來介紹一個大家最容易懂的當沖策略,這個策略基本架構如下:

1.找出開盤第一根30分鐘線
2.找出這根bar的高點及低點
3.找出30分鐘線的移動平均線,計算期間用9。
4.九點三十分之後,當指數突破這根bar的高點,且MA9斜率為正,就作多期指,跌破這根bar的低點且MA9斜率為負就作空期指。
5.作多時跌破MA9就停利,跌破開盤第一根BAR的低點就停損
6.作空時突破MA9就停利,突破開盤第一根BAR的高點就停損
7.尾盤不管盈虧均平倉

為啥這麼做呢?

因為我們發現,加權指數當日的最高點或最低點有七成的機率會出現在開盤前半小時或收盤前半小時。

然後我們可以觀察到,每天開盤的那個價位代表的是市場總體反映昨天所有消息面的總結果,法人在看到這個總結果之後,會擬定今天的多空策略,不管要做多還是做空,因為法人的部位大,所以基本上會在九點半之前就開始佈單,於是,九點到九點半就是法人與各方市場力量多空角力的時段,而這根30分鐘線的high及low,就是多空勢力所能達到的最極限,一旦在接下來的交易時間裡超過了這個極限,就代表比較明確的多空方向。

為了排除盤整時出現的假訊號,可以用9根bar的移動平均做檢驗,因為9根bar的移動平均,以三十分鐘線來說剛好代表一整個交易日,如果趨勢向上,代表短多,趨勢向下代表短空,這樣就可以用趨勢方向來保護當沖策略。

附圖是根據以上的原則,標示在加權指數上的說明。

選股結果之OutputFiled語法應用

ou1

選股功能中包含了一樣非常好用工具,叫做OutputFiled!
我們只要把計算出來的結果,用這個函數去印出來,然後排序,就可以看到市場上這個值的分布情況!除了把我們預像的值設成一個門檻,讓有符合的股票挑出來以外,這樣的表列方法,不僅可以知道市場上的股票多空位置,也可以很快速掌握到大盤動向!

var:i(0),HDay(0);
for i = 1 to 255
begin
if C> H[i] then HDay+=1;
end;

setoutputname1("HighDay");
outputfield1(Hday);
ret=1;

資料讀取256,最大引用255

這樣一來我們就可以把所有股票,在一年中所有價格所處的位置顯示出來! 2383,3310,…這些就是在一年新高位置,然後往下排序!

各位有學下這招了嗎! 無敵好用喔!

標準差的運用

tttt1

在統計學上有個應用相當普遍的計算,叫做”標準差”,在許多領域經常都會被使用到,今天我們拿來放在交易裡實作,看看能有什麼樣的運用?

要研究這個公式可能有點花時間,所以在XS裡提供了一個方便使用的系統函數,可以簡單快速的計算出結果:StandardDev

使用方法 StandardDev(Close,20,1),目前只要管前面兩個輸入參數就可以了:Close是收盤價,20是20期,日線的話就是20天,最後的 1都一直用1就好!

我們在拿來用以前要先大概知道一下標準差是什麼意思:簡單來說就是把最近幾期的價格拿來衡量一下,如果標準差越大,表示價格離散程度高,波動很大! 反之如果標準差小表示最近的股價的行為還算一致!

不過如果是單用收盤價Close會有一個麻煩,就是有的股價高,有些股價低的情況下就很難一致化判斷,所以我們小小調整一下,用高低波動比來計算標準差:
StandardDev(H/L,20,1) ,因為數值比較小,我們最後再乘上個100,畫出來的指令

 plot1(StandardDev(H/L,20,1)*100,"波動標準差");

那這要怎麼運用呢?

我們知道當股價在多頭走勢的時候,走出一波追高可能常常會追到很高,利用這個方式我們可以看得出來,多方在回檔休息的時,整個股價的下跌動能溢失,這時候就會出線波動標準差低點,挑這樣的時候進場,能夠取得贏面的機會也就比較大,忍受回檔風險的機會也相對會小很多!!

當然!適當的停損還是必要的,各位快來試試吧!

第一時間抓住反轉契機

tr1當股價下跌是一個持續性的行為時,我們看做是空方走勢! 而在股價一路下跌的這段期間,實際上反彈能量會一直不斷在累積,直到有一個事件觸發了這個反彈的能量包,反彈才會正式開始!

我們找到這樣的一個行為,當股價呈現下降趨勢,一但價格開始出現止跌反轉,那很明顯就有可能出現一個短波段,根據過去三年來的統計,這樣的反轉有6成7的機會能自低點彈升16%! 可以做為一個搶短多的獲利機會! 若反彈超過16%,還有可能發展出一波短多!

下圖可以看得出來禾伸堂(3026)在一段期間的下跌持續性相當高,幾乎就是只往下,我們從這段期間算出一個相當負的斜率! 同時我們以最近幾天的高點來算可能的反轉上升坡度,一但這個反轉的速度讓股價的型態看起來像是個V型反轉,那很可能就是一個跌勢的終點了!

當然要注意的是這樣的操作方式一定要以之前的低點當做最後停損點! 畢竟搶反彈雖然獲利快速,風險也相對會高些!

利用警示腳本我們可以把買進和停損訊號寫在一起!

input:Length(20); setinputname(1,"下降趨勢計算期數");
input:Rate(150); setinputname(2,"反轉率%");
variable: Factor(0),xStopLossPoint(0);

if currentbar= 1 then Factor = 100/Close; {先標準化股價}

if close > open and close < close[length] then
begin
value1 = linearregslope(high*Factor,Length);
value2 = linearregslope(high*Factor,3);
if value1 < 0 and value2-value1 > Rate*0.01 then begin
retmsg="搶反彈進場點"; {加上策略觸發時提示的訊息}
ret=1;
xStopLossPoint = Lowest(L,Length); {記下當時的V底低點}
end;
end;

if C < xStopLossPoint and C[1] > xStopLossPoint then
begin
retmsg="搶反彈最後停損點跌破"; {加上策略觸發時提示的訊息:這裡是多單賣出的提示!}
ret=1;
end;

tr2

糾結均線突破

mat1當股價收斂到一個程度,所有的均線都會相當靠近並且落在一個小範圍內!
這就是均線糾結: 換句話說,可以是多空不明的收斂狀態! 當股價只要有一些事件引起的風吹草動! 股價就會立即表態,往阻力最小的那邊跑去!!
這個現象可以被應用在多方, 也可以被應用在空方. 一但股價發生均線糾結的時候,就主動監控! 當股價往上發動穿越時,立刻以多方訊號通知!!
在警示腳本裡 我們需要算出短中長期的均線價格,依照慣用的原則,是只要收盤價穿過這三條線就可以發出多方訊號,不過在這邊我們加了一個安全門坎,用來濾掉一些可能的雜訊! 讓操作更有效率!

input: shortlength(5); setinputname(1,"短期均線期數");
input: midlength(10); setinputname(2,"中期均線期數");
input: Longlength(20); setinputname(3,"長期均線期數");
input: Percent(2); setinputname(4,"均線糾結區間%");
input: Volpercent(25); setinputname(5,"放量幅度%");//帶量突破的量是超過最長期的均量多少%
variable: shortaverage(0);
variable: midaverage(0);
variable: Longaverage(0);
variable:Kprice(0);
if volume > average(volume,Longlength) * (1 + volpercent * 0.01) then
begin
shortaverage = average(close,shortlength);
midaverage = average(close,midlength);
Longaverage = average(close,Longlength);
if Close crosses over maxlist(shortaverage,midaverage,Longaverage) then
begin
value1= absvalue(shortaverage -midaverage);
value2= absvalue(midaverage -Longaverage);
value3= absvalue(Longaverage -shortaverage);
if maxlist(value1,value2,value3)*100 < Percent*Close then Kprice=H;
end;
end;
ret= C crosses above Kprice;

mat2

大漲後的天量收黑

vb

成交量一向是最為常用的人氣指標,沒有量等於沒人氣,而超大量呢? 當然就是人氣匯集之時,而主力大戶當然就是要趁這個人最多的時候來出貨賣股票了! 此時不賣,更待何時呢? 當然這也有可能是個超級換手大量,從一個主力換成另一個看好的主力! 為了要判斷這兩種不同情況,我們要在個股創天量的時候記錄這時產生的高低關鍵價,只要盯住這個價格我們就知道背後大戶的動作是什麼了!

以虹光(2380)這檔股票為例,突然爆出了超級天量!當天振幅超大,把這種情況就要把低點列為空方關鍵價位!
這樣的策略就是需要觀察記錄過去一段時間的量變化,當量突增到一個極端值,價格也到達高點,就把該天的低點記下,當做是空方關鍵價! 一有穿價就提示空方訊號!

警示腳本的寫法如下,資料讀取設250,表示是一年來最大量,設成750就會去抓3年來的最大量,最大引用1即可!

variable:Maxv(0); MaxV= maxlist(Maxv,V);
variable:MaxH(0); MaxH= maxlist(MaxH,H);
variable:Kprice(0);
if Maxv = V and MaxH = H then Kprice = L;
ret= C crosses below KPrice ;

vb1

價量背離很難救!

pv股價需要漲升很重要的一點就是量要跟得上來,如果在多方走勢中,量一直沒辦法和價一樣同步上升,這就表示市場上沒有太多人有追價意願! 這時候想要再拉抬的主力有可能就會放棄這檔股票而開始把之前吃下的籌碼賣出!

不管是多大多小的股票,沒有了人氣都是一件很危險的警訊,當出現了價上升而量沒有同步放大的情況時,真的就必需非常注意,有鑑於此,我們把這樣的型態寫成一個訊號,當價量背離發生時,記錄下當時的低點當做關鍵價,當股價跌破時,可以視為空方訊號,

在XS裡寫起來不用太複雜

variable:count(0),KPrice(0),hDate(0); //設變數

count = CountIf(close > close[1] and volume < volume[1], 5);
//計算5期內價量背離的次數

if count > 3 then begin //如果發升三次以上
hDate=Date; //記錄日期
Kprice = lowest(l,length);//記錄關鍵價格
end;

ret= Close crosses below Kprice and DateDiff(Date,hdate) < 5 ;
//最後如果在價量背離發生的5天內價格跌破關鍵價時,發出訊號

我們可以看到股票大如仁寶在發生這樣的背離時,一跌破就賞了一跟跌停!這是屬於可以做超大放空部位的個股! 所以人氣的重要度真的可想一般!!

從開盤看關鍵轉折點

open rev開盤一直以來都是一個關鍵點,但光看開盤價可能還不是那麼足夠,需要搭配上一點過濾,才能把開盤這件事分析的更精確!

在XQ裡有統計一筆資料:開盤委買賣,裡面包寒了開盤委買張數和開盤委賣張數,我們今天要從這裡面挖寶!

每檔股票所統計的張數會因為股價和熱絡度不同會有很大的差異,但當我們把兩個數值相除後就可以標準化這事了!!

variable:IORatio(0),z(1);
IORatio=GetField("開盤委買")[z]/GetField("開盤委賣")[z]-1;

variable:iHigh(0),iLow(10000);

if IORatio > 0.5 and GetField("開盤委買")[z] = highest(GetField("開盤委買")[z],20) then
begin
iHigh = H;
end
else if IORatio < -0.5 and GetField("開盤委賣")[z] = highest(GetField("開盤委賣")[z],20) then
begin
iLow = L;
end;
if LS>0 and H > iHigh and C[1] if LSiLow then ret=1;

只要用這樣的方法就可以掌握開盤時,是誰真正在動作!

合併多重訊號到單一警示retmsg的應用

今天我們要介紹一個新功能,可以把多樣不同的訊號放在同個一腳本裡,只要透過設定回傳的訊息,就可以知道這個商品是多或空的觸發,而只要使用同一個進階警示就能完成!!

以台指期貨為例,在多數的情況下,如果股票有強力的多頭攻勢,第一個會需要突破的關卡就是昨日的高點!! 當指數期貨價格能衝過昨日高點,就代表著多頭勢力有一定程度的信心要作出一番攻擊,透過這樣的關鍵價監控,除了有助於對盤勢的掌握,更能再期指中有較強的獲力信心程度!

空方發動攻擊時,第一個目標價就是昨日低點!許多看盤者或交易程式都會把這個價格當做是多方留守的防線,一但價格被擊破,不少多方停損單會出籠,走出一段下跌走勢的機會也大大提升!!

我們把多空合併後,腳本可以這樣寫 {資料讀取400 最大引用10,適用1MIN}

variable:Xhigh(0),XLow(100000);

if Date xHigh =maxlist(H,xHigh);
xLow = minlist(L,XLow);
end;

if V > TimeDiff(currenttime,time,"S")*25 then begin
if L < XLow then begin retmsg ="破昨低觸空"; ret=1; end;
if H < xHigh then begin retmsg ="過昨高觸多"; ret=1; end;
end;

快來試試吧!

尋找少康中興的股票

朋友抱怨我給他的腳本跑出來的股票有的會漲,有的不漲反跌,我請他舉例,他舉完後,我就知道,我這朋友犯了一個開始做程式交易時大家都會犯的錯~拿單一策略去套用在所有的商品上。

以我朋友抱怨的這個腳本為例,這個腳本是去尋找過去橫向盤整超過二十天以上的股票,然後在今天盤中股價突破二十天來高點且出現長紅棒的時候進場。

電腦要挑出這樣的股票,它必須符合幾個條件
1.過去二十天以來最高價跟最低價差距小於6%
2.今天到目前是長紅棒(現在股價超過開盤價2.5%
3.現在的股價突破過去二十天高點
4.成交量到目前為止超過一千張

除了上述條件之外,這樣的股票必須是大家會追的下手的。

什麼叫大家追的下手的呢?

那就是股票要可能有些題材的?

反過來說,就是當電腦跑出一些符合上述條件股票,而這些股票毫無讓大家追得下手的題材時,就必須濾掉。

那些是屬於這種股票呢?

前些日子我曾分享一張企業生命週期的圖給大家。

我提到當一家企業,因為時勢而起,但同業有比它更強大的對手,營運開始進入惡性循環,長期下來毫無起色,最後走上英雄末路。

這樣的公司,我用XQ選股中心,設了兩個條件來篩選

1.連續六年EPS小於0.5元
2.近六年EPS合計小於1元或資本支出小於近三年平均

這些股票連續六年EPS少於0.5元,代表不管景氣如何,它有自己的問題,在問題解決前,這種股票缺乏題材,就算整理後稍有突破,大家也沒有什麼追價的動力。

但反過來說,這樣的公司如果連續幾個月營收數字都明顯優於過往,那就是少康中興的股票了。
要挑這樣的公司,就是在前面三個條件之後,再加上兩個條件
1.連續三個月月營收年增率都大於5%
2.月營收創13個月新高

等待少康的過程是漫長且可能等不到的,這樣的公司,平常根本不要拿來使用策略雷達,但如果等到少康中興時,就要納入每天的觀察名單中了,因為,歷史告訴我們,少康中興的投資報酬率很高,如果只以年報酬率來算,甚至會高過大金剛。