到奇狐勝券首頁 奇狐社區論壇 購買奇狐勝券 試用奇狐勝券
 
論壇首頁 你可以在這裡編輯你的資料,查看短訊,訂閱主題和論壇參數等等 免費會員註冊 會員列表 論壇幫助 論壇日曆 論壇搜索 加入我的最愛 登出論壇  
奇狐社區論壇 : Powered by vBulletin version 2.3.0 奇狐社區論壇 > 指標公式 > 問題交流 > 融資資料存取似乎怪怪的
  上一主題   下一主題
作者
主題 發表新主題    回覆主題
CCHCP0699
中級會員

註冊日期: Dec 2004
來  自: sdf
文章數量: 55

融資資料似乎怪怪的

融資資料似乎怪怪的

============= 以下為公式內文 ============
{ MarginTest }
{ 此公式用來測試 2330 3265 }

{ 在 開啟奇狐之後 若 先執行以上二檔股票 就不會出錯 }
{ 但是若先執行全部的股票 上市加上櫃 就會出現錯誤 }

TodayMPSurplus := LONDATA(4) ;

stkobjid:=STKLABEL;
stkobjname:=STKNAME;

<%
vTodayMPTotal = FFL.VarData("TodayMPSurplus") ' 今天融資餘額

vstkid=FFL.VarData("stkobjid")
vstkname=FFL.VarData("stkobjname")

iLoopMax = UBound( vTodayMPTotal )

' 會執行所有的資料( 每一天都執行 )
for ikk = 0 to iLoopMax
nowxxxxxxxTodayMPTotal = vTodayMPTotal( ikk )

if ikk = iLoopMax -1 and ( vstkid = 2330 or vstkid = 3265 )then
msgbox( nowxxxxxxxTodayMPTotal )
end if

next
%>

ENTERLONG: 1;
EXITLONG: 1;

向版主報告此篇 | 查IP位址
Old Post 2005-11-18 14:22
CCHCP0699 現在離線 點選這裡查看 CCHCP0699 的個人資料 點選這裡給 CCHCP0699 傳送一條短訊 查找更多關於 CCHCP0699 的文章 增加 CCHCP0699 至你的好友列表 編輯/刪除訊息 引用回覆
工程部
管理員

註冊日期: Jul 2005
來  自:
文章數量: 455

ikk = iLoopMax -1

msgbox( nowxxxxxxxTodayMPTotal )

會一跑出vbs視窗

交易系統公式跑全部1200支股票交易系統評價
會出現1200次vbs視窗

請問錯誤訊號為什麼呢?

向版主報告此篇 | 查IP位址
Old Post 2005-11-18 22:16
工程部 現在離線 點選這裡查看 工程部 的個人資料 查找更多關於 工程部 的文章 增加 工程部 至你的好友列表 編輯/刪除訊息 引用回覆
CCHCP0699
中級會員

註冊日期: Dec 2004
來  自: sdf
文章數量: 55

問題 多檔股票時融資餘額就會出現異常 煩勞各位大大幫我解惑

多檔股票時融資餘額就會出現異常 煩勞各位大大幫我解惑
問題 >> 3265 這檔股票是沒有融資券的 但融資餘額卻出現數值 而不是預期中的0或是1

if ikk = iLoopMax -1 and ( vstkid = 2330 or vstkid = 3265 )then
因為這行Code 所以公式只會秀出 最後一天 的 融資餘額
而且只會 秀出 2330 和 3265 這二檔股票 的 融資餘額
所以不管是對幾檔股票作交易系統評價 也只會秀出2次融資餘額


因為 2330 是 台積電 有開放融資 所以有融資餘額 ( http://tw.stock.yahoo.com/d/s/credit_2330.html )

但是 3265 是 台曜電 這檔股票 是沒有融資的股票 ( http://tw.stock.yahoo.com/d/s/credit_3265.html )

=========== 正常情況 Start ==============
若是建立一個版塊 只有 2330 和 3265 這二檔股票 顯示是正常
2330 是正確的資料
而3265 就只出現1(沒有融資餘額 卻出現1 還可以接受 )
=========== 正常情況 End ==============


=========== 異常情況 Start ==============
但是又建立一版塊 包含上市+上櫃的所有的股票 ( 大約 1千多檔股票 )
那資料就會出現錯誤
2330 仍然是正確的資料
但是 3265 卻出現8211 的數值(但是3265照理應該是沒有融資餘額才是)
=========== 異常情況 End ==============

向版主報告此篇 | 查IP位址
Old Post 2005-11-21 14:37
CCHCP0699 現在離線 點選這裡查看 CCHCP0699 的個人資料 點選這裡給 CCHCP0699 傳送一條短訊 查找更多關於 CCHCP0699 的文章 增加 CCHCP0699 至你的好友列表 編輯/刪除訊息 引用回覆
cgjj
總版主

註冊日期: Oct 2003
來  自:
文章數量: 18241

問題是出在你的觀念是錯的

此行是用於取得今日融資餘額
TodayMPSurplus := LONDATA(4) ;

然而 3265 是 台曜電 這檔股票
這股票是沒有融資的股票
也就是說 LONDATA(4) 對它來說是無意義的(無效數據)

但對 2330 來說是有效的

用VBS存取數列一定要注意一件事
就是存取的範圍必需為有效範圍
若超出數列的有效範圍
可能導致數值異常或當機

以奇狐語法判斷是否為有效數據, 可用 LBOUND 的值來判斷
例如:CK:=LBOUND(n);
當 CK>0 為有效數據, CK=0 為無效數據

以 VBS 語法判斷是否為有效數據, 可利用 FFL.VarStartIndex 的值來判斷
例如:CK=FFL.VarStartIndex("n")
當 CK>-1 為有效數據, CK=-1 為無效數據

既是無效數據, 就不應帶入迴圈運算(應直接跳脫返回 0 值)


以 VBS 寫作公式, 像下列這樣的寫法是最糟的
for i = 0 to UBound(n)
很容易導致 VBS 出錯或當機

建議改用
for i = LBOUND(n) to UBound(n)
若使用商品可能會有無效數據時
則應先檢測是否為無效數據
若為有效數據才帶入迴圈


觀念提醒:
 奇狐語法中數列有效起始位置未必都是 1
 VBS 語法中數列有效起始位置未必都是 0
 以 n = MA(C,10) 這樣的數列來說
 奇狐有效起始位置是 10
 VBS 有效起始位置是 9

向版主報告此篇 | 查IP位址
Old Post 2005-11-21 21:40
cgjj 現在離線 點選這裡查看 cgjj 的個人資料 點選這裡給 cgjj 傳送一條短訊 查找更多關於 cgjj 的文章 增加 cgjj 至你的好友列表 編輯/刪除訊息 引用回覆
cgjj
總版主

註冊日期: Oct 2003
來  自:
文章數量: 18241

用下面這方法, 在進 VBS 之前就主動先處理
會更理想喔

TodayMPSurplus:LONDATA(4);
TodayMPSurplus:=if(LBOUND(TodayMPSurplus)=0, 0, TodayMPSurplus);

向版主報告此篇 | 查IP位址
Old Post 2005-11-21 22:00
cgjj 現在離線 點選這裡查看 cgjj 的個人資料 點選這裡給 cgjj 傳送一條短訊 查找更多關於 cgjj 的文章 增加 cgjj 至你的好友列表 編輯/刪除訊息 引用回覆
CCHCP0699
中級會員

註冊日期: Dec 2004
來  自: sdf
文章數量: 55

講話 感謝了 謝謝

我覺得 "主動先處理" 這是最完美的

謝謝

向版主報告此篇 | 查IP位址
Old Post 2005-11-22 10:15
CCHCP0699 現在離線 點選這裡查看 CCHCP0699 的個人資料 點選這裡給 CCHCP0699 傳送一條短訊 查找更多關於 CCHCP0699 的文章 增加 CCHCP0699 至你的好友列表 編輯/刪除訊息 引用回覆
全部時間均為台灣時間, 現在時間為13:18 發表新主題    回覆主題
  上一主題   下一主題
顯示可列印版本 | 訂閱此主題

論壇跳轉:
主題評分:

論壇規定:
你不可以發表新主題
你不可以回覆文章
你不可以上傳附件
你不可以編輯自己的文章
HTML語法禁止
vB 語法核准
表情符號核准
貼圖語法[IMG]核准
 

本站所有內容未經作者授權禁止轉貼節錄, 發表言論僅供參考勿作為投資決策依據。瀏覽本站請使用 IE 5.5 以上版本, 最佳瀏覽解析度 1024 x 768 全彩。

Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.

簡愛洋行 製作 Copyright 2003-. All Rights Reserved.  聯絡我們