![]() |
在這個頁面顯示本主題全部的 29 個文章 |
奇狐社區論壇 (http://www.chiefox.com.tw/bbs/index.php)
- 問題交流 (http://www.chiefox.com.tw/bbs/forumdisplay.php?forumid=28)
-- 多分鐘均線問題 (http://www.chiefox.com.tw/bbs/showthread.php?threadid=13377)
多分鐘均線問題
DE:=date; TE:=hour*60+minute;
DEJP:=BARSLAST(DE=ref(DE,1));
SM:=ref(TE-ref(TE,1),DEJP);
SM:=SM[datacount];
均:=300/SM;
請教總版主;上面的公式是您指導的
然後我在六分圖上加入了這個公式
日均:ma(C,均);
現問題是:
當在1~5分時其日均值是錯的;只有在六的倍數的時間上才會顯示正確的日均值
我想在非六的倍數時間期間就顯示上一個六分線的日均值;該用公式如何表達?因為這樣數值才不會落差太大!
謝謝 感恩
回覆: 多分鐘均線問題
引用:
最初由 mead 發表
DE:=date; TE:=hour*60+minute;
DEJP:=BARSLAST(DE=ref(DE,1));
SM:=ref(TE-ref(TE,1),DEJP);
SM:=SM[datacount];
均:=300/SM;
請教總版主;上面的公式是您指導的
然後我在六分圖上加入了這個公式
日均:ma(C,均);
現問題是:
當在1~5分時其日均值是錯的;只有在六的倍數的時間上才會顯示正確的日均值
我想在非六的倍數時間期間就顯示上一個六分線的日均值;該用公式如何表達?因為這樣數值才不會落差太大!
謝謝 感恩
那請問總板
我以一分圖是300均 等比例 三分圖是100均,六分圖是50均,十分圖是30均
公式該如何表達才會正確
謝謝 感恩
引用:
最初由 mead 發表
那請問總板
我以一分圖是300均 等比例 三分圖是100均,六分圖是50均,十分圖是30均
公式該如何表達才會正確
謝謝 感恩
謝謝總版主的回答
我只是要在我切換不同分時時能自動調成與一分線300均對應;即
一分圖是:ma(c,300)
當我調成
二分圖時能自動調成:ma(c,150)
四分圖時能自動調成:ma(c,75)
五分圖時能自動調成:ma(c,60)
六分圖時能自動調成:ma(c,50)
十分圖時能自動調成:ma(c,30)
十五分圖時能自動調成:ma(c,20)
三十分圖時能自動調成:ma(c,10)
六十分圖時能自動調成:ma(c,5)
謝謝 感恩
N:=300;
if datatype=11 or datatype<=5 then begin
CK:=date<>ref(date,1);
SP:=barslast(CK)+1;
SP1:INTPART(N*SP[UBOUND(SP)]/270);
MA(C,SP1);
end;
感謝KV1566回覆 試試看
謝謝 感恩
引用:
最初由 KV1566 發表
N:=300;
if datatype=11 or datatype<=5 then begin
CK:=date<>ref(date,1);
SP:=barslast(CK)+1;
SP1:INTPART(N*SP[UBOUND(SP)]/270);
MA(C,SP1);
end;
引用:
最初由 mead 發表
對不起 測試過了 不對ㄋㄟ SP1和SP都一樣
請總版主或各位高手再幫幫忙
可以了 謝謝總版主的幫忙
謝謝 感恩
引用:
最初由 mead 發表
可以了 謝謝總版主的幫忙
謝謝 感恩
引用:
最初由 mead 發表
引用:
--------------------------------------------------------------------------------
最初由 KV1566 發表
N:=300;
if datatype=11 or datatype<=5 then begin
CK:=date<>ref(date,1);
SP:=barslast(CK)+1;
SP1:INTPART(N*SP[UBOUND(SP)]/270);
MA(C,SP1);
end;
--------------------------------------------------------------------------------
B]對不起 測試過了 不對ㄋㄟ SP1和SP都一樣
請總版主或各位高手再幫幫忙 [/B]
引用:
最初由 KV1566 發表
怪了!我這邊測試是對的耶!
以M2(兩分鐘K線為例),我上面那程式碼跑出來的SP1是150,而總版主寫的那個程式碼是135,
總版主是直接以一天270分鐘為劃分,而我上面那程式則由N:=300自由設定!
而且,SP與SP1的值,隨著十字軸的移動,確實是不一樣的!為什麼在你的測試中會變成一樣呢?!
引用:
最初由 cgjj 發表
我那段程式
在加權2分會是 135
在台指期貨2分會是 150
mead 兄所提 一分線300 , 應屬台指期貨的商品![]()
引用:
最初由 KV1566 發表
怪了!我這邊測試是對的耶!
以M2(兩分鐘K線為例),我上面那程式碼跑出來的SP1是150,而總版主寫的那個程式碼是135,
總版主是直接以一天270分鐘為劃分,而我上面那程式則由N:=300自由設定!
而且,SP與SP1的值,隨著十字軸的移動,確實是不一樣的!為什麼在你的測試中會變成一樣呢?!
引用:
最初由 mead 發表
盤後測都是對的 但在即時盤盤中則SP和SP1會一樣在數K棒 SP1無法固定成一比例值(如100)
謝謝KV1566兄的熱心協助
謝謝 感恩
引用:
最初由 KV1566 發表
了解!
那,改成下面這樣試試。應該可以在即時盤中固定住SP1了!
我沒有用即時盤中,所以用訓練模式測試,理論來說應該是可以的!
至於程式碼是否能再簡化之,就得請總版主幫幫忙了!
N:=300;
if datatype=11 or datatype<=5 then begin
CK:=date<>ref(date,1);
SP:=barslast(CK)+1 LINETHICK0;
OM:=OPENMINUTES(TIME) LINETHICK0;
SP1:=REF(SP,SP) LINETHICK0;
LSP:=ubound(SP) LINETHICK0;
SP1:INTPART(N*SP[LSP-SP[LSP]]/SP1/(OM[ubound(OM)-1]-OM[ubound(OM)-2]));
MA(C,SP1);
end;
今天期貨一開盤就測試SP=-1;所以認為有問題而沒再測試
但9:00後再測 可以了ㄋㄟ
明天再測9:00前的狀況
引用:
最初由 mead 發表
今天期貨一開盤就測試SP=-1;所以認為有問題而沒再測試
但9:00後再測 可以了ㄋㄟ
明天再測9:00前的狀況
引用:
最初由 KV1566 發表
這是數據取用有碰到誇天的關係,明天9:00前如果要試,要改用下面這組程式。
(又加入了一個ND的控制,程式越來越亂,若不計較就將就用用吧,不然,就得找總版主優化一下了)
N:=300;
if datatype=11 or datatype<=5 then begin
CK:=date<>ref(date,1);
SP:=barslast(CK)+1 LINETHICK0;
OM:=OPENMINUTES(TIME) LINETHICK0;
SP1:=REF(SP,SP) LINETHICK0;
LSP:=ubound(SP) LINETHICK0;
dd:=date;
if dd[datacount-1]<>dd[datacount-2] then ND:=1 else ND:=0;
SP1:INTPART(N*SP[LSP-SP[LSP]]/SP1/(OM[ubound(OM)-1+ND]-OM[ubound(OM)-2+ND]));
MA(C,SP1);
end;
引用:
最初由 mead 發表
好 明天我試試
謝謝您熱心的協助
感恩
引用:
最初由 ccutmis 發表
參考 總版主及KV1566兄的程式碼,個人作了一些修改,
剛才試過台當月、加權及台積電各分鐘的週期,
跟大家分享^^,希望有幫助!
N:=300;
if datatype=11 or datatype<=5 then begin
OM:=OPENMINUTES(TIME);
MX:=OM-ref(OM,1); //取得當前週期
MX:=if(MX<0,ref(MX,2),MX); //修正跨日問題
SP1:N/MX,linethick0;
MA(CLOSE,SP1);
end;
引用:
最初由 cgjj 發表
CK:=date<>ref(date,1);
SP:=barslast(CK)+1;
N:ref(SP,SP) linethick0;
N:=N[datacount];
MA(C,N);
引用:
最初由 mead 發表
可以了 謝謝總版主的幫忙
謝謝 感恩
ccutmis大大 不行ㄋㄟ
你的SP1無法固定
以三分K來說好了;在還沒到三分K時
第一個分SP1=300
第二個分SP1=150
第三個分SP1=100(此時已滿足三分鐘)
而我們要的是任何時刻;在三分K的日均線是ma(C,100);
在六分K的日均線是ma(C,50);
餘類推
以上報告測試結果 謝謝您熱心協助
感恩
引用:
最初由 mead 發表
ccutmis大大 不行ㄋㄟ
你的SP1無法固定
以三分K來說好了;在還沒到三分K時
第一個分SP1=300
第二個分SP1=150
第三個分SP1=100(此時已滿足三分鐘)
而我們要的是任何時刻;在三分K的日均線是ma(C,100);
在六分K的日均線是ma(C,50);
餘類推
以上報告測試結果 謝謝您熱心協助
感恩
引用:
最初由 ccutmis 發表
不好意思,是我測試時沒考慮到分鐘線不足的情況,
這邊再加上分鐘線不足時的處理,希望合用![]()
對了,另外有個地方請您留意...就是在開盤第一分鐘時是否正常
N:=300;
if datatype=11 or datatype<=5 then begin
OM:=OPENMINUTES(TIME);
MX:=OM-ref(OM,1); //取得當前週期
MX:=if(MX<0,ref(MX,2),MX); //修正跨日問題
MX:=if(MX<>ref(MX,1),ref(MX,2),MX); //修正分鐘線不足的問題
SP1:INTPART(N/MX),linethick0;
MA(CLOSE,SP1);
end;
{剛才測試到在加權會有點小問題,所以改了一些地方}
{測試的結果跟總版主及KV兄的結果相同}
經測試都OK了
謝謝總版主、KV156兄、ccutmis兄的熱心協助
謝謝 感恩
引用:
最初由 ccutmis 發表
不好意思,是我測試時沒考慮到分鐘線不足的情況,
這邊再加上分鐘線不足時的處理,希望合用![]()
對了,另外有個地方請您留意...就是在開盤第一分鐘時是否正常
N:=300;
if datatype=11 or datatype<=5 then begin
OM:=OPENMINUTES(TIME);
MX:=OM-ref(OM,1); //取得當前週期
MX:=if(MX<0,ref(MX,2),MX); //修正跨日問題
MX:=if(MX<>ref(MX,1),ref(MX,2),MX); //修正分鐘線不足的問題
SP1:INTPART(N/MX),linethick0;
MA(CLOSE,SP1);
end;
{剛才測試到在加權會有點小問題,所以改了一些地方}
{測試的結果跟總版主及KV兄的結果相同}
__________________
至誠能勝天下至偽
至拙能勝天下至巧
引用:
最初由 peter109 發表
不錯唷 給您拍拍手
全部時間均為台灣時間, 現在時間為17:33 | 在這個頁面顯示本主題全部的 29 個文章 |
Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.
簡愛洋行 製作 Copyright 2003-. All Rights Reserved.