1. 程式人生 > >【經典策略系列】之 Dual Thrust 交易策略

【經典策略系列】之 Dual Thrust 交易策略

一、楔子

今天看到了Dual Thrust系統的介紹,具體參見詳解程式化交易Dual Thrust策略-雪球
改寫了一下用於股票交易。
使用第n-1日(前天)以前N天的資料計算Range,第n-1日(昨天)的開盤價作為Open,第n-1日的收盤價或第n日(今天)的開盤價作為當前價與上界(BuyLine)進行比較。當股票突破上界,則認為該股票今天有較大行情,買入該股票。賣出與止損寫的比較隨意。
寫的是日間交易,日內交易回測太慢了。

Just for fun!

二、Dual Thrust策略介紹

Dual Thrust是一個趨勢跟蹤系統,由Michael Chalek在20世紀80年代開發,曾被Future Thruth雜誌評為最賺錢的策略之一。Dual Thrust系統具有簡單易用、適用度廣的特點,其思路簡單、引數很少,配合不同的引數、止盈止損和倉位管理,可以為投資者帶來長期穩定的收益,被投資者廣泛應用於股票、貨幣、貴金屬、債券、能源及股指期貨市場等。
在Dual Thrust交易系統中,對於震盪區間的定義非常關鍵,這也是該交易系統的核心和精髓。Dual Thrust系統使用Range = Max(HH-LC,HC-LL)來描述震盪區間的大小。其中HH是N日High的最高價,LC是N日Close的最低價,HC是N日Close的最高價,LL是N日Low的最低價。
具體說:

1、首先計算:
(1)N日High的最高價HH, N日Close的最低價LC;
(2)N日Close的最高價HC,N日Low的最低價LL;
(3)Range = Max(HH-LC,HC-LL)
(4)BuyLine = Open + K1*Range
(5)SellLine = Open + K2*Range

2.構造系統
(1)當價格向上突破上軌時,如果當時持有空倉,則先平倉,再開多倉;如果沒有倉位,則直接開多倉;
(2)當價格向下突破下軌時,如果當時持有多倉,澤縣平川,再開空倉;如果沒有倉位,則直接開空倉;

關鍵變數的意義如下圖所示:

關鍵變數的意義

三、本策略思路

1.當股票突破上界(Buyline),則認為該股票今天有較大行情,買入該股票。
2.當股價兩天內下跌6%,或者三天內下跌8%則賣出股票。
3.根據大盤止損。