2013年9月29日 星期日

金融商品交易 觀盤篇 成交量與動能

EasyTrader - ArtNo 006
市場成交量與價格的關係
1.確認當前價格運行趨勢:金融商品上漲或下跌,其趨勢可以用較大的成交量或逐漸增加的成交量進行確認。逆趨勢而行可以用成交量逐漸縮減或清淡成交量進行確認。
2.趨勢呈現弱勢的警告:如果市場成交量一直保持銳減,則警告目前趨勢正開始弱化。尤其是在交投市場清淡情況下創新高或新低,更應該小心謹慎。

分析成交量究竟能給我們帶來什麼呢?
 首先,可以從成交量變化分析某金融商品對市場的吸引程度。成交量越大,說明越有吸引力,以後的價格波動幅度可能會越大。
 其次,可以從成交量變化分析某商品的價格壓力和支撐區域。在一個價格區域,如果成交量很大,說明該區域有很大的壓力或支撐,趨勢將在這裡產生停頓或反轉。成交量是價格變化的一個重要因素,也是一個可能引起本質變動的因素,但是在大多數時候,只起到催化劑的作用。
我們先來看看期貨成交口數的歷史數據



表中顯示在2008年開始 50000口以下的成交量已經很少了



當日平均振幅與真實區間的變化在成交口數大於 11萬口以上逐漸明顯 , 因此對於開盤以後當日成交量的預估對獲利掌握的能力也有一定的幫助

我們可以將成交量的預估公式轉成指標放在圖表中觀察!

期貨成交量預估公式



加入預估量以後的圖表如下圖



黃色橫線為前一日成交量 ,白色圈圈內的預估量明顯放大 ,因此當日振幅也隨之放大, 雖說是預估量,但也不失為一可觀察的重點

程式碼如下
Input: Ratio(0.3) ;
vars: V_sum(0),V_est(0),TodayVol(0),YesterDayVol(0);

if date <> date[1] then begin
   YesterDayVol = TodayVol[1] ;
   V_sum = ticks;
end else begin
   V_sum = V_sum + ticks;
end;

if time<=0850 then V_est = V_sum * 28.90
else if Time >0850 and time <= 0855 then V_est = V_sum * 18.67
else if Time >0855 and time <= 0900 then V_est = V_sum * 14.29
else if Time >0900 and time <= 0905 then V_est = V_sum * 9.54
else if Time >0905 and time <= 0910 then V_est = V_sum * 7.20
else if Time >0910 and time <= 0915 then V_est = V_sum * 6.11
else if Time >0915 and time <= 0920 then V_est = V_sum * 5.25
else if Time >0920 and time <= 0925 then V_est = V_sum * 4.73
else if Time >0925 and time <= 0930 then V_est = V_sum * 4.27
else if Time >0930 and time <= 0935 then V_est = V_sum * 3.88
else if Time >0935 and time <= 0940 then V_est = V_sum * 3.60
else if Time >0940 and time <= 0945 then V_est = V_sum * 3.33
else if Time >0945 and time <= 0950 then V_est = V_sum * 3.12
else if Time >0950 and time <= 0955 then V_est = V_sum * 2.95
else if Time >0955 and time <= 1000 then V_est = V_sum * 2.80
else if Time >1000 and time <= 1005 then V_est = V_sum * 2.65
else if Time >1005 and time <= 1010 then V_est = V_sum * 2.53
else if Time >1010 and time <= 1015 then V_est = V_sum * 2.42
else if Time >1015 and time <= 1020 then V_est = V_sum * 2.32
else if Time >1020 and time <= 1025 then V_est = V_sum * 2.24
else if Time >1025 and time <= 1030 then V_est = V_sum * 2.17
else if Time >1030 and time <= 1035 then V_est = V_sum * 2.10
else if Time >1035 and time <= 1040 then V_est = V_sum * 2.05
else if Time >1040 and time <= 1045 then V_est = V_sum * 1.98
else if Time >1045 and time <= 1050 then V_est = V_sum * 1.92
else if Time >1050 and time <= 1055 then V_est = V_sum * 1.88
else if Time >1055 and time <= 1100 then V_est = V_sum * 1.83
else if Time >1100 and time <= 1105 then V_est = V_sum * 1.79
else if Time >1105 and time <= 1110 then V_est = V_sum * 1.75
else if Time >1110 and time <= 1115 then V_est = V_sum * 1.71
else if Time >1115 and time <= 1120 then V_est = V_sum * 1.68
else if Time >1120 and time <= 1125 then V_est = V_sum * 1.63
else if Time >1125 and time <= 1130 then V_est = V_sum * 1.59
else if Time >1130 and time <= 1135 then V_est = V_sum * 1.56
else if Time >1135 and time <= 1140 then V_est = V_sum * 1.53
else if Time >1140 and time <= 1145 then V_est = V_sum * 1.51
else if Time >1145 and time <= 1150 then V_est = V_sum * 1.48
else if Time >1150 and time <= 1155 then V_est = V_sum * 1.45
else if Time >1155 and time <= 1200 then V_est = V_sum * 1.43
else if Time >1200 and time <= 1205 then V_est = V_sum * 1.40
else if Time >1205 and time <= 1210 then V_est = V_sum * 1.38
else if Time >1210 and time <= 1215 then V_est = V_sum * 1.35
else if Time >1215 and time <= 1220 then V_est = V_sum * 1.33
else if Time >1220 and time <= 1225 then V_est = V_sum * 1.31
else if Time >1225 and time <= 1230 then V_est = V_sum * 1.30
else if Time >1230 and time <= 1235 then V_est = V_sum * 1.28
else if Time >1235 and time <= 1240 then V_est = V_sum * 1.26
else if Time >1240 and time <= 1245 then V_est = V_sum * 1.24
else if Time >1245 and time <= 1250 then V_est = V_sum * 1.22
else if Time >1250 and time <= 1255 then V_est = V_sum * 1.21
else if Time >1255 and time <= 1300 then V_est = V_sum * 1.19
else if Time >1300 and time <= 1305 then V_est = V_sum * 1.16
else if Time >1305 and time <= 1310 then V_est = V_sum * 1.15
else if Time >1310 and time <= 1315 then V_est = V_sum * 1.13
else if Time >1315 and time <= 1320 then V_est = V_sum * 1.11
else if Time >1320 and time <= 1325 then V_est = V_sum * 1.09
else if Time >1325 and time <= 1330 then V_est = V_sum * 1.08
else if Time >1330 and time <= 1335 then V_est = V_sum * 1.05
else if Time >1335 and time <= 1340 then V_est = V_sum * 1.03
else if Time >1340 and time <= 1345 then V_est = V_sum * 1.00;

if time = 1345 then TodayVol = V_sum ;
plot1(V_sum, "Daily V sum");
plot2(V_est, "Volume Est");
plot3(YesterDayVol,"LastdayVol");
plot4(YesterDayVol*Ratio, "VolumeRatio");

動能
成交量影響振幅大小 , 而動能幫我們確認趨勢的方向與轉折,這裡也介紹另一個觀察成交量變化(動能)的方式

TS2000i 在分K圖中表達成交量的保留字有三 ,各代表不同的意義
Ticks →成交量
Upticks →上漲量
Downticks→下漲量

在 日K線以上 Ticks 與 Volume 都代表成交量

動能 = (當日上漲量 - 當日下跌量)的累計值)

利用Tick 的特性 , 我們可以觀察目前的動能與價格變化 , 如下圖


程式碼如下

vars: V_energy(0);
f date <> date[1] then begin
   V_energy = Upticks-DownTicks;
end else begin
   V_energy = V_energy + Upticks-DownTicks;
end;

if V_energy >= 0 then plot1(V_energy, "V_energy",Yellow)
    else plot1(V_energy, "V_energy",White);

Plot2(1000) ;
Plot3(-1000) ;

對於日內交易應有相當的助益!

春江水暖鴨先知 ~ 開盤量與收盤量的觀察

一般開盤與收盤的成交量(包含了法人量,當沖/隔日沖進出場量)相對於整日或隔日的價格運動有一定的影響力 , 我們也可以將它放在成交量指標觀察



程式碼:
Input: EarlyTime(900),EndTimeA(1330),EndTimeB(1345);

vars: V_sum(0),EarlyVol(0),EndVolA(0),EndVolB(0),EndVol(0),EarlyClose(0),EndOpen(0);

{一般成交量的語法 }

If DataCompression >= 2 Then
Plot1(Volume, "Volume",iff(Close >= Close[1],Red,Green),Black,0)
Else
Plot1(UpTicks + DownTicks, "Volume",iff(Close >= Close[1],Red,Green),Black,0);

{ 計算累計成交量}
if date <> date[1] then begin
    V_sum = ticks;
end else begin
    V_sum = V_sum + ticks;

{ 將 09:00前的累計量存在變數中 , 並記錄區間收盤價 }
   if time <= EarlyTime then Begin
       EarlyVol = V_sum ;
       EarlyClose = Close ;
   end;

{ 將13:30~13:45的累計量存在變數中 , 並記錄區間開盤價 }
   if time < EndTimeA then EndVolA = V_sum ;
   if time <= EndTimeB then EndVolB = V_sum ;
   if time >= EndTimeA and time <= EndTimeB then EndVol = EndVolB - EndVolA ;
   if time = EndTimeA then EndOpen = Open ;
end;

{不同顏色畫出 指定區間的成交量}

if time = Earlytime then
plot2(EarlyVol,"EarlyVol",iff(EarlyClose >= OpenD(0),Yellow,White),Black,3);

if time = EndtimeB then
plot3(EndVol, "EndVol",iff(CloseD(0) >= EndOpen,Yellow,White),Black,3);

讀者只要細心觀察 ,必定能找出獲利的開啟之鑰

沒有留言:

張貼留言