GetField("月營收月增率","M") 語法問題

  •   178 
  • 最後發表   天晴  2020 七月 28
天晴 發文於   2020/07/24

value1 = GetField("月營收月增率","M")  這個語法可以抓到最新月份資料

上面語法下完後直接使用value1[1] 和value1[2]如下

if value1>0 and value1[1]>0 and value1[2]>0 

then condition1=true;

再用outputfield看帶出資料發現不會帶出前1期和前2期資料都顯示最新月份資料

請問這是bug嗎

排序方式: 標準 | 最新
XQ小幫手 發文於   2020/07/27

天晴大 您好

Q:GetField("月營收月增率","M") 顯示錯誤?
A:小幫手有使用您的策略測試過是否顯示有問題,但我這邊是正確的,
以下截圖提供給您參考
使用的程式碼如下,也提供給您做參考
如果依然有問題,也歡迎提供小幫手您的策略匯出檔
記得要勾選"匯出策略雷達所包含的自訂腳本"
謝謝您的提問

value1 = GetField("月營收月增率","M") ;

//if value1>0 and value1[1]>0 and value1[2]>0

//then condition1=true;

//if condition1 = true then
//ret=1;
condition1 = value1>0;
condition2 = value1[1]>0;
condition3 = value1[2]>0;

if condition1 and condition2 and condition3 then
ret=1;

outputfield1(value1);
outputfield2(value1[1]);
outputfield3(value1[2]);

 

附加文件

天晴 發文於   2020/07/27

value1 = GetField("月營收月增率","M") ;

 

if value1>0 and value1[1]>0 and value1[2]>0

then condition1=true;

請問上面這段寫法哪裡有問題呢?

 

if condition1=true then 

Print(file("C:\print\print.log"),"Date=", Date, symbol,"月營收月增率", value1, value1[1], value1[2]);

這樣print 出來的職3個月都一樣

XQ小幫手 發文於   2020/07/28

天晴大 您好

A1:您想這樣撰寫當然也是可以,

但是您必須要去設定資料讀取筆數區間,

其實小幫手覺得不用搞得如此複雜啦,

您其實可以寫

if value1>0 and value1[1]>0 and value1[2]>0 

then ret=1 ; 

就會得出您要的答案了 謝謝您

A2: 小幫手幫您試過了,可能要請您檢視一下您的資料讀取筆數是否設的值太小?

附上我測試的PRINT結果給您參考

 

附加文件

發表回覆
Close