使用自訂指標腳本找出最近KD金叉的相對K棒位置

  •   830 
  • 最後發表   Jack  2017 三月 28
Jack 發文於   2017/03/20

如何在指標內所得到的資料,如金叉,死叉,對應K棒如何找出的語法為何?

 

我使用自訂指標腳本找出最近KD金叉的相對K棒位置,來當作範例說明。

 

大致邏輯為:

   1. 使用系統內建腳本【KD 隨機指標】程式碼,來取得KD數值

   2. 若 K值突破D值 則 KD_CrossDate 為當時的日期

   3. 若 為今日,則 value1 為 相對K棒位置

 

圖片說明:

   下圖(或附檔 )為今日執行此程式碼範例的結果,綠色柱狀圖的數值為距離今日相對幾根K棒;例:相對K棒位置為5則代表,目前K棒的前5根K棒日期為傳入日期(傳入日期為 KD_CrossDate )

 

程式碼範例如下:

input: Length(9), RSVt(3), Kt(3);
variable: rsv(0), k(0), _d(0), KD_CrossDate(0);

SetInputName(1, "天數");
SetInputName(2, "RSVt權數");
SetInputName(3, "Kt權數");

Stochastic(Length, RSVt, Kt, rsv, k, _d);

condition1 = k cross above _d;

if condition1 then KD_CrossDate = date;

if currentdate = date then value1 = getbaroffset(KD_CrossDate);

Plot1(k, "K(%)");
Plot2(_d, "D(%)");
plot3(value1,"相對K棒位置"); 

 

以上提供參考,若有問題歡迎詢問,謝謝。

附加文件

排序方式: 標準 | 最新
tita 發文於   2017/03/26

您好,我有照做,卻是不同結果

Jack 發文於   2017/03/28

大家好,

這裡還有另一種簡單的寫法,供大家參考

 

邏輯是,若金叉時,則相對K棒位置的數值初始化;反之則累加。

 

圖片說明:

   下圖(或附檔 )為今日執行此程式碼範例的結果,綠色柱狀圖的數值為距離今日相對幾根K棒;例:相對K棒位置為5則代表,目前K棒的前5根K棒日期為傳入日期(傳入日期為 KD_CrossDate )

 

腳本範例如下:

input: Length(9), RSVt(3), Kt(3);
variable: rsv(0), k(0), _d(0), KD_CrossDate(0);

SetInputName(1, "天數");
SetInputName(2, "RSVt權數");
SetInputName(3, "Kt權數");

Stochastic(Length, RSVt, Kt, rsv, k, _d);

if k crosses above _d then value1 = 0 else value1 += 1;

Plot1(k, "K(%)");
Plot2(_d, "D(%)");
plot3(value1,"相對K棒位置"); 

 

提供給大家參考。

 

----------

 

Tita 您好:

請您提供完整的畫面(如我提供的圖片畫面)以及完整的腳本程式碼,這樣我比較好除錯,謝謝。

tita 發文於   2017/03/28

那時跑出來並沒有那根,今天重叫進來就有了,

有時很困擾,明明程式直接拷貝結果卻不同,也不知問題出

在哪裡,是軟體出問題嗎?有時自己寫的也會這樣

Jack 發文於   2017/03/28

如果之後有遇到此情況的話,

建議直接Mail給嘉實客服 XQservice@XQ.com.tw 以下資訊

  • 完整的腳本程式碼檔案(.Xsb)
  • 有問題的畫面
  • Log資料夾壓縮檔(C:\SysJust\XQLite\LOG)

將這三個資訊給客服,那邊應該會有專人服務,以上供參。

 

發表回覆
Close