[TS懶人包] [保險服務]

2009年7月4日 星期六

程式交易 - 指標背離判斷方式

關於背離…簡單的來說,背離的條件就是在價格創新高的情況下,指標沒有創新高;或是價格創新低時,指標沒有跟著創新低。這樣的條件說來簡單…自己看圖也可以很簡單的指出哪邊背離哪邊又背離的…可是當要寫成程式就不這麼簡單了。

用了很多的方法想寫出背離的程式…連 Array 都差點拿來用了,結果都不太正確…一直到最近跟某個高手討論才寫出了下面的判斷方法…

這個程式只算是一半,只有寫出背離的判斷…至於判斷產生背離後要怎麼去做,那就讓大家自行發揮了。

首先看一下這一段判斷高點背離的程式碼:

if high > highest(high[1], 70) then begin
value1 = barnumber;
value2 = highest(high[21], 50);
for value3 = 21 to 70 begin
if high[value3] = value2 then begin
value4 = value3;
end;
end;
if high > value2 and KD < KD[value4] then begin
LongDC = 1;
end;
end;

if LongDC = 1 and KD > KD[barnumber - value1 + value4] then
LongDC = 0;


看完了程式碼應該很多人頭昏了…解釋一下這段程式碼在作什麼。

首先,如果目前的高點是最近 70 根 k 線的高點的話…就把目前的 barnumber 記錄下來,並且抓出次高點。在這邊我所抓的次高點是離新高的 20 根 k 線之前的 50 根 k 線。接著再用一個 for 迴圈把次高點出現的距離算出來。

到這邊可以知道目前有的資料就是當根為新高,另外也知道了次高點所在的位置,就開始判斷一下兩者的指標是不是也有跟著創新高,或是有背離的產生。

LongDC 為一個變數…用來記錄目前是不是有背離的產生…

最後一部份就是什麼時候這個背離是失效的。這邊寫入了…目前如果 LongDC = 1 (也就是背離的情況) 之後指標又創新高了…那當然這個背離就是失效了。就跟著把 LongDC 的值改回為 0 囉。

程式說明就到這邊…低點背離的情況就反著寫就行了…有興趣就自行玩玩看囉。

10 則留言:

  1. 背離真的不好寫,如果能夠用圖形來作判斷應該會比較好寫.畢竟用邏輯的方式來寫背離.思考邏輯總是轉不過來.可是圖形程式(電玩圖形判斷)和數學邏輯思考好像不太一樣!

    回覆刪除
  2. 感謝大大一直在您的部落格發表許多很好的策略和好文章 非常thanks!請教大大在盤中如果遇到漲停或跌停就獲利平倉,用ts語言如何撰寫?thanks!!!!!!

    回覆刪除
  3. 感謝大大一直在您的部落格發表許多很好的策略和好文章 非常thanks!請教大大在盤中如果遇到漲停或跌停就獲利平倉,用ts語言如何撰寫?thanks!!!!!!

    回覆刪除
  4. danelongg:圖形寫不出來耶

    伯仔勇:要用程式直接算出很精確的漲跌停是沒辦法的…可以試著用昨日的收盤價 6.9% 當作漲跌停了…目前我是以 6.8% 就出場的作法。

    回覆刪除
  5. if marketposition = 1 then begin
    exitlong("7%XB") at intportion(closed(1)*1.07) - 1 limit;
    end;

    試試取整數
    但你要確定ts裡前一天收盤價資料是調整後的收盤價喔

    回覆刪除
  6. if marketposition = 1 then begin
    exitlong("7%XB") at intportion(closed(1)*1.07) limit;
    hh = 0;
    end;
    修一下

    回覆刪除
  7. DK版大,

    長久以來在你這邊挖到不少好的寫法,
    非常感謝你~!
    愛用者我(噗)想請教你一下,
    當程式使用五分鐘線的時候,
    想要抓出上周最高/低價
    以及上週週線的開盤/收盤價
    應該要怎麼寫呢??

    感謝~!

    回覆刪除
  8. 黃:感謝提供…不過收盤價是需要調整過的這一點…應該比較難作到呢。

    回覆刪除
  9. sen16888: 這個...目前想不到好的作法耶...如果是在 TS 裡面的話還可以用多週期的方式抓到資料.. HTS 裡面的話...用個參數每個星期手動改吧..= =a

    回覆刪除
  10. 通常收盤價跟結算價差不超過10點(暫不考慮換月)
    10*0.07=0.7
    所以我第一次貼的有減1,保守點就多減幾點
    我是用元大yeswin的資料
    他的資料都有調整收盤價
    不然開盤前到GS裡改一下...雖然很煩...但是真要追求成交在漲停就要多勤快點 ㄏㄏ

    回覆刪除

請留下您的大名…匿名者恕不回應…

Related Posts Plugin for WordPress, Blogger...