2010年7月27日 星期二

[策略驗證] 2010/07/27 訊號

今日於12:35出現賣出訊號,賣出價位在7645,於13:15當沖出場,出場價位7659,此次交易虧損14點,自6/14至今累計獲利157點。

[策略驗證] 2010/07/23 訊號

今日於12:20出現買進訊號,買進價位在7691,於13:15停損出場,出場價位7683,此次交易虧損8點,自6/14至今累計獲利171點。

2010年7月22日 星期四

[策略驗證] 2010/07/22 訊號

今日於09:40出現賣出訊號,賣出價位在7544,於10:20停損出場,出場價位7584,此次交易虧損40點,自6/14至今累計獲利179點。
圖1. 近五百日每筆交易明細

2010年7月20日 星期二

[策略驗證] 2010/07/20 訊號

今日於11:45出現賣出訊號,賣出價位在7712,於12:50策略出場,出場價位7722,此次交易獲利10點,自6/14至今累計獲利219點。
圖1. 近五百日每筆成交明細

2010年7月19日 星期一

[策略驗證] 2010/07/16 訊號

今日於09:45出現賣出訊號,賣出價位在7654,於10:15停損出場,出場價位7683,此次交易虧損29點,自6/14至今累計獲利209點。

圖1. 近五百日每筆交易明細

2010年7月13日 星期二

[策略驗證] 2010/07/12 訊號

今日於10:40出現買進訊號,買進價位在7597,於13:10策略出場,出場價位7610,此次交易獲利13點,自6/14至今累計獲利238點。

今日的交易發現,有些出場策略會互相覆蓋訊號,以至於出場點由7627降到7610,減少了17點的獲利,今日將重新改寫這些互相干擾的訊號,進行策略重 驗證。

 圖1. 近五百個交易日每筆交易明細

2010年7月12日 星期一

改寫TradeStation的標準差函式

在TradeStation內建的標準差函式中,只要傳入要計算的數列及計算週期即可得到標準差,在其函式中包函了一段先計算平均數後,再計算標準差,這 對於不需要平均值的使用者直接使用是沒有問題的,但是一般在開發指標時,都會需要平均值及標準差搭配使用(如包寧傑通道),此時就會重覆計算平均值的部 份,而浪費運算的時間,所以本篇就是改寫原有的標準差函式,改為可以傳入平均值的函式。要達到個目的有二種寫法,一個是改寫原有的函式,當平均值傳入某一 個特定的值時(如999999.99),則會在函式中重新計算平均值,另一個是重新寫一個標準差的函式,在本文中筆者採用第二種方式,即重新寫一個標準差 的函式。其步驟如下:

首先如圖1所示,在PowerEditor中,按下新增的按鈕,然後新增一個Function. 再來如圖2的畫面中填入函式的名稱、說明後按下OK,則可在圖3中開始編寫程式,其原始碼如文末所列。寫完後按下F3做完Verify後,即可在函式列表 中找到新增的_StdDev的函式。

圖1. 建立一個新函式
 圖2. 填入函式的屬性
 圖3.函式原始碼

原始碼:
{
Price : 價格數列.
MAValue : 平均值.
Length : 計算週期.
}
Inputs: Price(NumericSeries), MAValue(NumericSimple), Length(NumericSimple);
Variables: SumSqr(0), Counter(0);

If Length <> 0 Then Begin
SumSqr = 0;
For Counter = 0 To Length - 1 Begin
SumSqr = SumSqr + (Price[Counter] - MAValue) * (Price[Counter] - MAValue);
End;
_StdDev = SquareRoot(SumSqr / Length);
End
Else
_StdDev = 0;

2010年7月11日 星期日

[程式交易]新增分析商品

在新增一個商品時,首先要先編緝商品字典,如圖1.由Tools中選取Edit Symbol Dictionary的選項,會出現如圖2.的畫面。在圖2.中按下Add Symbol的按鈕後,會出現圖3.的畫面,讓使用者選取商品的類別,此時選取Index為要新增的商品類別。
 
依序將圖4.中的各個欄位填入商品的各項屬性,其說明如下:
Symbol:商品的名稱。
Description:商品的說明。
Exchange:選擇商品的交易所,新增台灣商品時,要選取TAISE。目前台灣分為證交所及期交所,但在TS中只有一個證交所,所以若新增的商品屬於 期交所的話,要點選Use the following settings as default來改變商品的交易時間及各項屬性。
PriceScale:價格的小數位數,台指期貨時則選取As Is。
Daily Limit:漲跌停的限制(價格的實際變動),因台灣以百分比為漲跌停限制,所以先輸入1000,在做策略回測時,再由策略中去限制。
Min. Movement:商品的最小移動點數。
Big Point Value:商品每大點的金額。
Session1 Start Time:第一段交易時間的開始時間。
Session1 End Time:第一段交易時間的結束時間。
再來要勾選交易的星期時,記得週六也要選取,這樣遇到補上班時,才會收得到資料。填完之後按下OK。
 
 在圖5.中可看見剛剛所填入的商品出現在Dictionary中。
 再來選取Insert中的Symbol,則會出現圖7.的畫面,然後按下Add from Dictionary後會出現如圖8.的畫面,在Category的選項中選取Index,Exchange選擇TAISE,在Search for中填入TEST後按下Find的按鈕後即可在商品列表中看到剛剛所新增的TEST這個商品。選取該商品後按下Add->的按鈕後再按下Add 的按鈕即可新增該商品。
 在要新增的商品表中,可以看到TEST已出現在列表中,用Add from Dictionary的方式新增商品時,則會自動在商品名稱後面帶上交易所的名稱。再來按下OK後,即完成新增商品的動作。

2010年7月9日 星期五

今日於11:40出現買進訊號,買進價位在7573,於13:15當沖出場,出場價位7567,此次交易虧損6點,自6/14至今累計獲利225點。
圖1. 近五百個交易日每筆交易明細

[策略驗證] 2010/07/08 訊號

今日於12:00出現買進訊號,買進價位在7546,於13:15當沖出場,出場價位7533,此次交易虧損13點,自6/14至今累計獲利231點。

2010年7月6日 星期二

[策略驗證] 2010/07/06 訊號

今日於09:40出現買進訊號,買進價位在7295,於13:15當沖出場,出場價位7424,此次交易獲利129點,自6/14至今累計獲利244點。
圖1. 近五百日每筆成交紀錄

2010年7月5日 星期一

[策略驗證] 2010/07/05 訊號

今日於12:10出現買進訊號,買進價位在7249,於13:15當沖出場,出場價位7278,此次交易獲利29點,自6/14至今累計獲利115點。 
圖1. 近五百個交易日交易明細