有辦法使用," 不同時間K棒頻率的指標嗎? "

  •   666 
  • 最後發表   Abel. Yang  2021 二月 09
Abel. Yang 發文於   2021/01/31

想要請教  撰寫腳指標
在1分K的畫面,當價格穿越 " 日K的5日均線價格 " 。

給予指標提醒。

那問題卡在,怎麼跨?

排序方式: 標準 | 最新
XQ小幫手 發文於   2021/02/01

Abel. Yang 您好

您在1分k的雷達下,撰寫

if close cross over average(GetField("收盤價","D"),5) then 
ret=1;

用cross over 跨頻率取日線的平均就ok了!

Abel. Yang 發文於   2021/02/02

您好,小幫手。 有些地方還不很清楚。
照你的那個介紹 了解了一些東西,但是沒辦法用 EMA  因此我改寫成這樣子

 
dema6l=xf_EMA("D",low,6);  //6低
 
if close - 40 cross below dema6l  then plot1(close,"6低");

但是奇怪的地方是 如下圖

右側有顯示 6低在哪裡。 我用 - 40 來提早做 標記  區間。

但是這個位置出現的匪夷所思。

 

 

 

XQ小幫手 發文於   2021/02/03

Abel. Yang 您好

 

主要是您的low 這樣寫的話,會取到1分k的low  

日線的low 跟 1分k的low 是會不同的

所以您應該這樣寫,您可以先用指標看一下數值

var:dema6h(0),dema6l(0);

dema6h=xf_ema("D",GetField("最高價","D"),6);  //  6 高

dema6l=xf_ema("D",GetField("最低價","D"),6);  //   6低

if close - 40 cross below dema6L then plot1(close,"注意");  

plot2(dema6h);
plot3(dema6l);

(抱歉我也卡關了有點久= =  試了頗久也很疑惑

Abel. Yang 發文於   2021/02/03

哈哈哈哈~ 問題又回來了。 有很多奇怪的 bug
這個寫法 我試過,只有那個位置正確,其他很多地方都不正確。

那個sma5 也是....有沒有很奇妙
搞得我頭都快炸裂了

很奇怪 只是 要寫EMA6 高低 跟 SMA5收 
然後1分K有到那個價位就幫我提醒一下,有些誤差超大。 大到近百點。

 

 

2/4 早安,今早直接直接顯示高低 ,省去了加減 ,不做提早通知測試。

 xf_ema("D",GetField("最高價","D"),6);

我開始懷疑是不是你們家 語言的 BUG了。



 

 

 

 

XQ小幫手 發文於   2021/02/04

Abel. Yang 您好

能否請您提供您寫的完整程式碼給小幫手呢?

這樣小幫手會比較好幫您看問題點在哪裡 

感謝

Abel. Yang 發文於   2021/02/04

以下囉。

 

//  BBAND

input: 

Length(50, "MA的天數"), 

UpperBand(2, "上通道標準差倍數"), 

LowerBand(2, "下通道標準差倍數");

variable: mid(0), up(0), down(0);

 

up = bollingerband(Close, Length, UpperBand);

mid = average(close, Length);

down = bollingerband(Close, Length, -1 * LowerBand);

 

//  SMA

variable: sma5(0), sma10(0), sma50(0), sma200(0), slope200(0);

 

sma5 = average(close,5);

sma10 = average(close,10);  // 做輔助判斷

sma50 = average(close,50);

sma200 = average(close,200);

 

slope200= linearregslope(sma200,2);

 

// 日 EMA

 

var: D_ema6h(0), D_ema6l(0), D_sma5(0), D_halfP(0);

 

value1 = GetField("收盤價","D");

value2 = GetField("開盤價","D");

 

D_ema6h = xf_ema("D",GetField("最高價","D"),6);

D_ema6l = xf_ema("D",GetField("最低價","D"),6);

D_sma5 = average(GetField("收盤價","D"),5);

D_halfP = (( closeD(1) - openD(1) ) * 0.5 ) + opend(1);

 

 

if close -40 cross below D_ema6l then plot1(close,"EMA6L");  // 價格穿越 EMA6低

if close +40 cross below D_ema6h then plot2(close,"EMA6H");  // 價格穿越 EMA6高 

if close +40 cross above D_sma5 then plot3(D_sma5,"SMA5");  // 價格穿過 SMA5

 

 

if close - 40 cross below D_halfp then plot4(D_halfp,"半價"); // 價格 跌落一半

Abel. Yang 發文於   2021/02/09

看來 過年前是等不到了。 我自己也著手找答案。

用了最早你給我跨頻率的編碼。 
做了一些測試。 發現到一個現象。

我把線畫出來後....你看到了嗎? 換盤的時候會出現這個現象。
我換過其它取日K5日均線的方式,但就這個現象變在 00:00的時候會發生。

當然 EMA的部分我也試過了。  看你們有甚麼想法,新年快樂。

 

發表回覆
Close