並沒有計算正確的預估量

  •   291 
  • 最後發表   Zreedom  2023 十月 04
Zreedom 發文於   2023/09/12

小幫手您好,想寫出計算指標腳本,用9:30前的成交量的5倍來算預估量,但value1算出來的結果跟隔天的value2完全一樣,感覺不合理(預估跟實際應該會有落差),並沒有用09:30前的成交量去算預估量,想確認哪邊有寫錯

//預估量 9:30的成交量*5

if issessionfirstbar then value1 = volume

else if time < 093000 then value1 += volume;

value11 = value1*5;//前30根一分鐘線成交量的合計的5倍

 

plot1(value11,"當日預估量");

 

Value2=GetField("Volume", "D")[1]*2; //昨日成交量

Value3= xf_xaverage("d",GetField("Volume", "D")[1], 5)*2; //五日均量

Value4= xf_xaverage("D",GetField("Volume", "D")[1], 60)*2;// 季均量

 

plot2(value2,"昨日成交量兩倍");

plot3(value3,"五日均量兩倍");

plot4(value4,"季均量兩倍");

 

condition5 = (value11> value2) or (value11>value3) or (value11>value4);

 

plot5(condition5,"是否爆量");

排序方式: 標準 | 最新
XQ小幫手 發文於   2023/09/20

 Hello Zreedom,

 

小幫手不懂您的意思,這邊測試 value11 不會等於隔日的 value2。 (參考附圖)

麻煩您解釋得更詳細些想要作什麼,遇到什麼商品什麼日期時間有問題。

或是您可以自行手動計算,看是哪裡出了問題,小幫手看value11是當日 090000 ~ 092000 的 成交量加總乘以5沒錯。

附加文件

Zreedom 發文於   2023/09/23

下面代碼 我想要計算09:30前的累積成交量 但後續跟用getfield("volume","D");取得的一日成交量取得的數值卻顯示相同,如圖

//用09:30前的成交量計算預估量

if issessionfirstbar then value1 = volume

else if getfield("Time", "1") < 093000 then value1 += volume;

plot1(value1,"當日0930成交量");

 

//預估量等於9:30的成交量*5

value11 = value1*5;//前30根一分鐘線成交量的合計的5倍

plot2(value11,"當日預估量");

 

//用volumeD確認預估落差大小

value12= getfield("volume","D");

plot3(value12,"當日累積成交量 volumeD");

附加文件

Zreedom 發文於   2023/09/26

今天另外有發現,如果用不同頻率(日頻率、1分鐘)跑指標,計算出來的數值會有差異,如圖

以下是我用的代碼:

 

//用09:30前的成交量計算預估量

if issessionfirstbar then value1 = volume

else if getfield("Time", "1") < 093000 then value1 += volume;

plot1(value1,"當日0930成交量");

 

//預估量等於9:30的成交量*2

value11 = value1*2;//前30根一分鐘線成交量的合計的2倍

plot2(value11,"當日預估量");

 

//用volumeD確認預估落差大小

value12= getfield("volume","D");

plot3(value12,"當日累積成交量 volumeD");

 

Value2=GetField("Volume", "D")[1]*2; //昨日成交量

Value3= xf_xaverage("d",GetField("Volume", "D")[1], 5)*2; //五日均量

Value4= xf_xaverage("D",GetField("Volume", "D")[1], 60)*2;// 季均量

 

plot4(value2,"昨日成交量兩倍");

plot5(value3,"五日均量兩倍");

plot6(value4,"季均量兩倍");

附加文件

XQ小幫手 發文於   2023/10/04

 Hello Zreedom,

 

日頻率的腳本並不會每分鐘都計算。

且當根Bar就是當日唯一一根Bar,所以 issessionfirstbar 會是 True,因此 value1 會等於當日的成交量。

 

如果要在日頻率的狀況下取得30分鐘頻率的資料,過去的資料可以用 getfield("volume", "30")[8] 來取得。

當天的資料則要用迴圈判斷要往前幾根。

 

指數移動平均是種會用到前期運算值的指標。

如果您運算的資料長度不夠的話,算出的值是會有差別的。

由於腳本中有計算到 60 期日平均,會需要約 244 日長度的資料才足夠。 (參考附圖)

附加文件

發表回覆
Close