COCO研究院

 找回密碼
 註冊
搜索
查看: 39081|回復: 32

(指標)自動標示出背離.

  [複製鏈接]
發表於 10-5-15 19:39 | 顯示全部樓層 |閱讀模式
本帖最後由 ilpir 於 10-5-15 09:35 PM 編輯

一直以來價格和指標的背離是我們常用的判斷方式,


        分享簡單的一個方法,當價格和指標發生背離時,


         由程式直接在圖上標示出來,做為提醒或是下單判斷~


雖然我們可以很清楚在圖上指出那裡是背離,


        但如交由電腦判斷就要轉換成電腦看的懂的語言,


        這部份並不難只要把條件列出,


        剩下的就是看我們使用什麼程式語言去寫了~


        以下用KD 多頭背離做例子:


背離判斷方式每個人都不盡相同,


       我是以轉折點做判斷



        如下圖,A1,A2各為價格轉折點,A2價格大於A1,


        但底下的KD(%D)值B2<B1.

這裡視為多頭背離,要做空.

2010-03-07_111622.jpg

那如何轉成電腦語言呢?

這樣做:

1.KD指標產生一個轉折時,找出上方最高價格,並記下來.

  判斷轉折如下圖所示: 當D2>D1 D3<D2 ,D2為一轉折點

圖ss1.jpg

2.比較相鄰兩個轉折點及價格大小,A1>A2 B1<B2,

A2視為多頭背離.


OK,條件有了,那寫成簡單的程式吧..


程式如下:

inputs:length(9);

vars:d1(0),d2(0),price(0),KD(0),Gap(0),b(0);

{以上為宣告=讓電腦認識這些下面要用的字}

d1=slowD(length);

{d1=SlowKD 中的%D}

if d1[1]>d1[2] and d1[1]>d1[0]  then begin

KD=d1[2];

price=highest(close,8);

{找出轉折發生時,往後8根價格的最高值}

b=barnumber;

end;

{以上就是條件1的程式語言,加入b=barnumber ,

讓電腦記住轉折點是在第幾根K棒發生的}

Gap=b-b[1];

{算出兩次轉折點中間有幾根K}

if KD<KD[1] AND price>price[1] and Gap>8 then begin

plot1(high);

end;

{以上就是條件2的程式語言,加入兩次轉折要隔8K棒才算數 }


好~完成,結果如下,看來還不錯~

這只是一個基本範例,可以再加入許多有趣的判斷,修改.
        當然也可用在MACD,RSI等.

留給有興趣的大大去發揮囉~

2010-05-15_213154.jpg

評分

參與人數 1金錢 +2 收起 理由
googleandy + 2 好文章,我推薦

查看全部評分

發表於 10-5-15 20:09 | 顯示全部樓層
好東西~程式高手~又有教學解說
謝謝分享
發表於 10-5-15 20:27 | 顯示全部樓層
要把訊號由手動轉程式,感覺好抽象
發表於 10-5-15 21:25 | 顯示全部樓層
好棒的文章!有圖、有程式碼和文字解說,一看就懂。

先找出2個KD的轉折點(D2),加入條件限制要相隔8根k線以上才有效,懂了。
謝謝分享!
發表於 10-5-15 23:24 | 顯示全部樓層
  好多怪獸...
我愛紅茶 該用戶已被刪除
發表於 10-5-16 00:12 | 顯示全部樓層
那個黃色點點~就是背離訊號ㄛ~~
AB也可以弄出這種東東嗎?
發表於 10-5-16 05:23 | 顯示全部樓層
一直以來價格和指標的背離是我們常用的判斷方式,
        分享簡單的一個方法,當價格和指標發生背離時,
    ...
ilpir 發表於 10-5-15 07:39 PM

程式如下:

inputs:length(9);

vars:d1(0),d2(0),price(0),KD(0),Gap(0),b(0);

{以上為宣告=讓電腦認識這些下面要用的字}

d1=slowD(length);

{d1=SlowKD 中的%D}

if d1[1]>d1[2] and d1[1]>d1[0]  then begin

KD=d1[2];



請教  KD的轉折點為何是d1[2] 不是d1[1]
 樓主| 發表於 10-5-16 07:50 | 顯示全部樓層
回復 8# mori868


    嗯..mori大好眼力..
一時筆誤,更正:
if d1[1]>d1[2] and d1[1]>d1[0]   then begin

   KD=d1[1];
   price=highest(close,9);
   b=barnumber;
end;

不過並不影響結果,因為d1[1]>d1[2] and d1[1]>d1[0] 已成立,
接下來只是丟一個值給KD.

ps: d1[0]->目前這一根k棒產生的值,d1[1]前一根的值,d1[2]再前一根..以此類推~
發表於 10-5-16 10:15 | 顯示全部樓層
請問MACD的背離要如何寫呢?
謝謝
發表於 10-5-16 11:17 | 顯示全部樓層
真是不錯的介紹!
概念 > 圖形 > 程式碼 滿滿的知識
謝謝
發表於 10-5-22 15:44 | 顯示全部樓層
真的很棒!!說明得很完整
感恩指導
發表於 10-5-23 14:51 | 顯示全部樓層
不錯的sample code,可以拿來用用發展
發表於 11-3-24 22:02 | 顯示全部樓層
邏輯與常識
真是字字珠璣呀
發表於 11-3-25 20:19 | 顯示全部樓層
謝謝詳細圖解說明,正好需要
發表於 11-3-26 00:19 | 顯示全部樓層
不過還是要感謝ilpir給我很多思
考上的啟發
您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則

手機版|Archiver|站長信箱|廣告洽詢|COCO研究院

GMT+8, 24-11-22 07:57

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回復 返回頂部 返回列表
理財討論網站 |