奇狐社區論壇
在這個頁面顯示本主題全部的 12 個文章

奇狐社區論壇 (http://www.chiefox.com.tw/bbs/index.php)
- 問題交流 (http://www.chiefox.com.tw/bbs/forumdisplay.php?forumid=28)
-- [求救]如何用SAR 畫趨勢線 的公式 (http://www.chiefox.com.tw/bbs/showthread.php?threadid=13906)


由 taiwanyang121 在 2010-07-06 14:32 發表:

問題 [求救]如何用SAR 畫趨勢線 的公式

如下之邏輯如何寫成公式=====================================

// 引用SAR: SAR值:='SAR.SARN';
// IF 今低 > SAR值 AND 反轉高<=今高 THEN BEGIN
// 反轉高:=今高;
// ELSE IF 今高 < SAR值 AND 反轉低>=今低 THEN BEGIN
// 反轉低:=今低;
// END ;
// IF SAR值今叉 今收盤 THEN BEGIN
// 交叉數=交叉數+1;
// IF 交叉數>2 AND 存有兩個以上的反轉低 THEN
// 畫出支撐線 並且 只保留兩條支撐線
// END;
// IF SAR值死叉 今收盤 THEN BEGIN
// 交叉數=交叉數+1;
// IF 交叉數>2 AND 存有兩個以上的反轉高 THEN
// 畫出壓力線 並且 只保留兩條壓力線
// END;


由 cgjj 在 2010-07-06 20:45 發表:

回覆: [求救]如何用SAR 畫趨勢線 的公式

引用:
最初由 taiwanyang121 發表
如下之邏輯如何寫成公式=====================================

// 引用SAR: SAR值:='SAR.SARN';
// IF 今低 > SAR值 AND 反轉高<=今高 THEN BEGIN
// 反轉高:=今高;
// ELSE IF 今高 < SAR值 AND 反轉低>=今低 THEN BEGIN
// 反轉低:=今低;
// END ;
// IF SAR值今叉 今收盤 THEN BEGIN
// 交叉數=交叉數+1;
// IF 交叉數>2 AND 存有兩個以上的反轉低 THEN
// 畫出支撐線 並且 只保留兩條支撐線
// END;
// IF SAR值死叉 今收盤 THEN BEGIN
// 交叉數=交叉數+1;
// IF 交叉數>2 AND 存有兩個以上的反轉高 THEN
// 畫出壓力線 並且 只保留兩條壓力線
// END;



麻煩請給原始想法和相關定義
這樣半程序化的碼難以理解協助您處理
模糊空間太大


由 taiwanyang121 在 2010-07-06 22:23 發表:

抱歉重新敘述

例如假設當SAR值開始有值時
第一次為HIGH小於SAR值 開始, 一直到LOW大於SAR值 ,這期間的最低值為反轉低 , 當下次有發生時的循環時 將兩次的反轉低連成一條先即為支撐線
相反的如果第一次發生的是LOW大於SAR值開始 , 一直到HIGH小於大SAR值 ,這期間的最高值為反轉高 , 當下次有發生時的循環時 將兩次的反轉高成一條先即為壓力線

保留最後兩跟隻稱線與兩條壓力線


由 peter109 在 2010-07-07 00:53 發表:

回覆: 抱歉重新敘述

引用:
最初由 taiwanyang121 發表
例如假設當SAR值開始有值時
第一次為HIGH小於SAR值 開始, 一直到LOW大於SAR值 ,這期間的最低值為反轉低 , 當下次有發生時的循環時 將兩次的反轉低連成一條先即為支撐線
相反的如果第一次發生的是LOW大於SAR值開始 , 一直到HIGH小於大SAR值 ,這期間的最高值為反轉高 , 當下次有發生時的循環時 將兩次的反轉高成一條先即為壓力線

保留最後兩跟隻稱線與兩條壓力線



SARN:SAR(10,2,20),CIRCLEDOT;
H01:=SARN>REF(SARN,1) AND SARN>REFX(SARN,1);
H02:=SUM(H01,0);
H03:=H02<>REF(H02,1);
LINEVALUE(H02=H02[DATACOUNT]-1 AND H03,H,H02=H02[DATACOUNT] AND H03,H,0,0);
LINEVALUE(H02=H02[DATACOUNT]-2 AND H03,H,H02=H02[DATACOUNT]-1 AND H03,H,0,0);

L01:=SARN<REF(SARN,1) AND SARN<REFX(SARN,1);
L02:=SUM(L01,0);
L03:=L02<>REF(L02,1);
LINEVALUE(L02=L02[DATACOUNT]-1 AND L03,L,L02=L02[DATACOUNT] AND L03,L,0,0);
LINEVALUE(L02=L02[DATACOUNT]-2 AND L03,L,L02=L02[DATACOUNT]-1 AND L03,L,0,0);

__________________
至誠能勝天下至偽
至拙能勝天下至巧


由 taiwanyang121 在 2010-07-07 17:24 發表:

抱歉我可能要在說明更清楚

引用:
最初由 peter109 發表
SARN:SAR(10,2,20),CIRCLEDOT;
H01:=SARN>REF(SARN,1) AND SARN>REFX(SARN,1);
H02:=SUM(H01,0);
H03:=H02<>REF(H02,1);
LINEVALUE(H02=H02[DATACOUNT]-1 AND H03,H,H02=H02[DATACOUNT] AND H03,H,0,0);
LINEVALUE(H02=H02[DATACOUNT]-2 AND H03,H,H02=H02[DATACOUNT]-1 AND H03,H,0,0);

L01:=SARN<REF(SARN,1) AND SARN<REFX(SARN,1);
L02:=SUM(L01,0);
L03:=L02<>REF(L02,1);
LINEVALUE(L02=L02[DATACOUNT]-1 AND L03,L,L02=L02[DATACOUNT] AND L03,L,0,0);
LINEVALUE(L02=L02[DATACOUNT]-2 AND L03,L,L02=L02[DATACOUNT]-1 AND L03,L,0,0);


==============================
你是將SAR 反轉點連線, 有錯
我是想將反轉低(SAR 在上的期間的最低點) 或反轉高連線!!如附圖


由 taiwanyang121 在 2010-07-07 17:35 發表:

找不到HHV LLV 的位置函數好畫線??

買訊:CROSS(CLOSE,SARN) COLORYELLOW;
賣訊:CROSS(SARN,CLOSE) COLORYELLOW;
交叉數:SUM(CROSS(CLOSE,SARN) OR CROSS(SARN,CLOSE),0) COLORYELLOW;
CK:買訊+賣訊 linethick0 coloryellow;

SS買:SUM( CLOSE>SARN , BARSLAST(CK<>0)+1) LINETHICK0 COLORYELLOW;
SS賣:SUM( CLOSE<SARN , BARSLAST(CK<>0)+1) LINETHICK0 COLORYELLOW;

反轉高值:IF( REFX(CK,1)=-1,HHV(HIGH,SS買),0) linethick0 coloryellow;
反轉低值:IF( REFX(CK,1)=1,LLV(LOW,SS賣),0) linethick0 coloryellow;
上次CK不為零的位置:BARSCOUNT(CK<>0) COLORYELLOW;
最後是買訊:BARSLAST(CLOSE<SARN)>=0 COLORYELLOW;
=================================
已能判斷
1.最後一個交叉點是買訊,
2.所以最號一個交叉後的反轉低與最後第三交叉點第二個交叉點之間的反轉低 , 也能找出來, 但是就是找不到函數能能算出反轉低的BARPOS好畫線


由 taiwanyang121 在 2010-07-08 01:33 發表:

回覆: 找不到HHV LLV 的位置函數好畫線??

引用:
最初由 taiwanyang121 發表
買訊:CROSS(CLOSE,SARN) COLORYELLOW;
賣訊:CROSS(SARN,CLOSE) COLORYELLOW;
交叉數:SUM(CROSS(CLOSE,SARN) OR CROSS(SARN,CLOSE),0) COLORYELLOW;
CK:買訊+賣訊 linethick0 coloryellow;

SS買:SUM( CLOSE>SARN , BARSLAST(CK<>0)+1) LINETHICK0 COLORYELLOW;
SS賣:SUM( CLOSE<SARN , BARSLAST(CK<>0)+1) LINETHICK0 COLORYELLOW;

反轉高值:IF( REFX(CK,1)=-1,HHV(HIGH,SS買),0) linethick0 coloryellow;
反轉低值:IF( REFX(CK,1)=1,LLV(LOW,SS賣),0) linethick0 coloryellow;
上次CK不為零的位置:BARSCOUNT(CK<>0) COLORYELLOW;
最後是買訊:BARSLAST(CLOSE<SARN)>=0 COLORYELLOW;
=================================
已能判斷
1.最後一個交叉點是買訊,
2.所以最號一個交叉後的反轉低與最後第三交叉點第二個交叉點之間的反轉低 , 也能找出來, 但是就是找不到函數能能算出反轉低的BARPOS好畫線



因為連線的是反轉期間的最高或最低點, 而不是反轉點的低或高點!!!!所以就很傷腦筋了!!!!!!!!! 試了TROUGH, TROUGHBARS.....等函數好像都不行???難道奇狐沒有其他函數可以用了??


由 cgjj 在 2010-07-08 08:47 發表:

回覆: 回覆: 找不到HHV LLV 的位置函數好畫線??

引用:
最初由 taiwanyang121 發表
因為連線的是反轉期間的最高或最低點, 而不是反轉點的低或高點!!!!所以就很傷腦筋了!!!!!!!!! 試了TROUGH, TROUGHBARS.....等函數好像都不行???難道奇狐沒有其他函數可以用了??


您用 HHV 和 LLV 可算出期間最高或最低價位
相同的可用 HHVBARS 和 LLVBARS 來算出相對的位置
試試看吧


由 taiwanyang121 在 2010-07-08 10:53 發表:

回覆: 回覆: 回覆: 找不到HHV LLV 的位置函數好畫線??

引用:
最初由 cgjj 發表
您用 HHL 和 LLV 可算出期間最高或最低價位
相同的可用 HHVPOS 和 LLVPOS 來算出相對的位置
試試看吧



f請教參數如何設??


由 cgjj 在 2010-07-08 10:56 發表:

回覆: 回覆: 回覆: 回覆: 找不到HHV LLV 的位置函數好畫線??

引用:
最初由 taiwanyang121 發表
f請教參數如何設??


Sorry 剛前面回的誤把 BARS 敲為 POS , 現已修正

一模一樣
HHV(HIGH,30);
相對的
HHVBARS(HIGH,30);


由 taiwanyang121 在 2010-07-08 13:21 發表:

請教如果最後的支撐趨勢線與壓力線交叉....

如果最後的支撐趨勢線與壓力線都是往下的時候交叉, 若有多單則出場,
如果最後的支撐趨勢線與壓力線都是往上的時候交叉, 若有空單則出場,
要如何寫呢????


由 taiwanyang121 在 2010-07-08 16:17 發表:

感謝版主及Peter兄

一前一直用將反轉前的前波高和前前波期間的最高點連成壓力線, 一直總覺得不好用, 今日指導後才明白應將反轉點的最高點連線才是趨勢線而不是以前用的期間最高點!!!!!!因為趨勢反轉點與反轉點的聯結才是趨勢


全部時間均為台灣時間, 現在時間為05:02
在這個頁面顯示本主題全部的 12 個文章


Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.

簡愛洋行 製作 Copyright 2003-. All Rights Reserved.