古期薦讀:在電子表格中建立回溯測試環(huán)境(二)[程序化要聞]
表5.1.2系統(tǒng)重要格位、公式與功能
格位 |
公式 |
功能 |
|
A1:F302 |
臺指期貨日事務(wù)數(shù)據(jù),從第A欄到第F欄依序為「日期」、「開盤價」、「最高價」、「最低價」、「收盤價」、「成交量」等技術(shù)分析所需價量數(shù)據(jù),數(shù)據(jù)筆數(shù)共300筆(含兩列標(biāo)題,共計302列),雖然在本例中選擇使用臺指期貨為分析標(biāo)的,但只要切換數(shù)據(jù)內(nèi)容(以復(fù)制貼上的操作將數(shù)據(jù)取代即可),即可用于分析其他投資標(biāo)的。圖5.1.1中所示者為自2008/6/13至2009/4/30之臺指期貨近月連續(xù)日事務(wù)數(shù)據(jù)。 由于臺指期貨商品會在每個月的第三個禮拜三到期,近月期貨到期后,取下一個近月的事務(wù)數(shù)據(jù)接續(xù),此即所謂「臺指期近月連續(xù)數(shù)據(jù)」,當(dāng)然,在數(shù)據(jù)接續(xù)過程中可能產(chǎn)生價格滑價。假若,讀者欲分析股價數(shù)據(jù),則必須使用經(jīng)除息除權(quán)調(diào)整后的數(shù)據(jù),以免產(chǎn)生誤判。 |
||
I5 |
設(shè)定心理線計算回溯天數(shù)(N值)。 |
||
I6 |
設(shè)定心理線買進(jìn)下限值(依據(jù)表5.1.1的操作規(guī)則,一般取0.25) |
||
I7 |
設(shè)定心理線賣出上限值(依據(jù)表5.1.1的操作規(guī)則,一般取0.75) |
||
G3:G302 |
以G3格位為例,其為「=IF(E4>E3,1,0)」,余類推。 |
判斷當(dāng)日收盤價(E4)相對于昨日收盤價(E3)為上漲或下跌,若上漲則填為1,不漲則填為0。完成G3格位后,將之復(fù)制至「G4:G302」范圍即可。復(fù)制的方法很簡單,除了以「復(fù)制+貼上」的操作外,由于連續(xù)格位的復(fù)制,也可以將鼠標(biāo)定在G3格位右下角,直接拖曳至G302格位即可,更簡單的作法是將鼠標(biāo)定在G3格位右下角后,雙按鼠標(biāo)即可。 |
|
H53:H302 |
以H53格位為例,其為「=AVERAGE(G53:OFFSET(G53,-(I$5-1),0))」,余類推。 |
計算心理線指標(biāo),可參考表5.1.1中的公式。在此以Excel之AVERAGE函數(shù)求算平均值以得心理線指標(biāo),由于心理線指標(biāo)回算天數(shù)N,為可彈性改變的參數(shù),此將造成計算平均的數(shù)據(jù)范圍變動,為此可以Excel之OFFSET函數(shù)找到范圍的參照格位位置,OFFSET函數(shù)的第一個參數(shù)為參照格位位移起點,第二個參數(shù)為列號改變移動量,第三個參數(shù)為欄號改變移動量,在此例中,以G53為參照格位位移起點,移動-9(由-(10-1)算得)列(上移9列),并移動0欄(因為平均值數(shù)據(jù)區(qū)域的另一個位置在同一欄中),即可得正確參照范圍。 |
|
I52 |
設(shè)定起始買賣狀態(tài),因為一開始維持不變,故為「2」(本章中設(shè)定買賣判斷數(shù)值標(biāo)簽,「1表買進(jìn),3表賣出,2表維持部位不變」),此格位將被其他格位參照,因此必須設(shè)定。 在本章范例中,保留前50筆數(shù)據(jù)作為指針回算之用。為何需要保留回算天數(shù)呢?以計算20日均線為例,必須在第20天收盤后,取得共20日資料才能算得均線值,此20,即為指標(biāo)回算日數(shù);保留50筆數(shù)據(jù),系為了能保留參數(shù)回算的彈性變動空間。扣除掉2列標(biāo)題,起始買賣狀態(tài)出現(xiàn)在第50日的列52,余類推。 |
||
I53:I302 |
以I53格位為例,其為「=IF(H53<=I$6, 1, IF(H53>=I$7, 3, 2))」,I54:I302直接復(fù)制自I53格位。 |
判斷「買進(jìn)」(設(shè)為1)、「賣出」(設(shè)為3)或「維持不變」(設(shè)為2)。在此,系依據(jù)表5.1.1心理線判斷方法中的第二條規(guī)則操作,當(dāng)心理線指標(biāo)(H53)<=買進(jìn)下限(I6),則買進(jìn)(=1);當(dāng)心理線指標(biāo)(H53)>=賣出上限(I7),則賣出(=3);否則不變(=2)。 |
|
J52 |
設(shè)定起始股票張數(shù)余額,期初為0。 |
||
J53:J302 |
以J53格位為例,其為「=IF(I52=1,K52/B53+J52,IF(I52=2,J52,0))」,J54:J302直接復(fù)制自J53格位 |
計算股票賬戶余額。 若昨日出現(xiàn)買進(jìn)訊號(I52=1),則將持有現(xiàn)金(K52)依據(jù)今日開盤價(B53)買進(jìn),并累計至昨日股票余額(J52);若訊號維持不變(I52=2),則此格位為昨日股票余額(J52);若訊號為賣出(若I52不為1或2,則為3),則股票賬戶為0。 |
|
K52 |
設(shè)定起始資金賬戶余額,期初為$1,000。 |
||
K53:K302 |
以K53格位為例,其為「=IF(I52=1,0,IF(I52=2,K52,J52*B53+K52))」,K54:K302直接復(fù)制自K53格位 |
計算現(xiàn)金賬戶余額。 若昨日出現(xiàn)買進(jìn)訊號(I52=1),則已經(jīng)買進(jìn)所有股票,因此現(xiàn)金賬戶將為0;若訊號維持不變(I52=2),則此格位為昨日現(xiàn)金賬戶余額(K52);若昨日出現(xiàn)賣出訊號(I52=3),則將所有昨日股票余額(J52)以今日開盤價(B53)賣出(以J52*B53算得),累加到昨日現(xiàn)金賬戶余額(K52)中。 |
|
K5 |
=((J302*E302+K302)-K52)/K52 |
計算分析期間使用「心理線策略」之期間報酬率。計算方法系以「期末股票部分」(J302)乘上「期末收盤價」(E302)加上「期末現(xiàn)金賬戶余額」(K302),得到「期末投資價值」,以之減去「期初投資金額」(K52),再除以「期初投資金額」(K52),即可。 |
|
K6 |
=(E302-B53)/B53 |
計算分析期間使用「買進(jìn)持有策略」之期間報酬率。計算方法系以「期末收盤價」(E302)減去「期初開盤價」(B53),再除以「期初開盤價」(B53),即可。 |
|
K7 |
=K5-K6 |
計算使用分析期間,使用「心理線策略」相對于使用「買進(jìn)持有策略」之超額報酬率。 |
|
? | ? | ? | ? |
?
??? 由圖5.1.1中可以追蹤依據(jù)心理線指標(biāo)的買進(jìn)賣出過程,只有在「2008/9/11」買進(jìn)、「2009/2/16」賣出,未再買賣交易,期間報酬率為-29.02%。若此期間采取「買進(jìn)持有策略」,期間報酬率為-0.84%,使用「心理線策略」相對于使用「買進(jìn)持有策略」之超額報酬率為-28.18%。
??? 將圖5.1.1中的日期、收盤價、心理線值、買進(jìn)下限值與賣出上限值等數(shù)據(jù)繪成折線圖(以日期為橫軸、心理線值、買進(jìn)下限值與賣出上限值為主坐標(biāo)軸、收盤價為副坐標(biāo)軸),可得如圖5.1.2的線圖。由線圖中可以觀察到買賣點位置(在圖中以「插入?圖案」的操作加入了買進(jìn)的向上箭頭與賣出的向下箭頭)以及損益狀況。由圖形追蹤可知,若能調(diào)整指標(biāo)參數(shù),或許有機(jī)會增加獲利。http://www.weiqiv.net.cn
??? 在圖5.1.2中,使用了副坐標(biāo)軸之設(shè)定,應(yīng)如何做呢?當(dāng)我們希望將多組信號同時繪制在統(tǒng)計圖上時,會面臨資料范圍相差過大的問題,例如在圖5.1.2中,心理線值介于0與1之間,可是收盤價卻介于3,500到8,000間,若使用同一坐標(biāo)軸,心理線指標(biāo)會看不清楚,因此可點選開盤價的線圖,以鼠標(biāo)右鍵打開快速菜單,選取「數(shù)據(jù)系列格式」,在打開的窗口中的「數(shù)列選項」選擇「副坐標(biāo)軸」選項即可,如圖5.1.3所示。
?
t;t;
有思路,想編寫各種指標(biāo)公式,程序化交易模型,選股公式,預(yù)警公式的朋友
可聯(lián)系技術(shù)人員 QQ: 511411198 或微信:cxhjy888 進(jìn)行 有償 編寫!(不貴!點擊查看價格!)
相關(guān)文章
-
沒有相關(guān)內(nèi)容