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

註冊日期: Dec 2003
來  自:
文章數量: 291

金當月的問題

偶而在寫一個公式時發現在金當月(FITF1)中有一個不可解的事情,就是他的數據對應似乎有問題,例如用下面這個簡單的式子測試一下
vertline(H=908.00 and L=891.40);
竟然有許多無法正確找到對應點,有對的,有找不到的,也有找到天南地北去的,像 (904.40,900.00) (908.00,891.40) (860.20,848.00) 就找不到,而 (865.00846.00) (913.00906.00) (889.00878.40) 就找得到,我不知道這只是我個人的問題,還是奇狐的問題,提出來請教一下,請測試測試

註: 在其他期貨股票都沒有這個問題存在

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

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

以此為例 vertline(H=908.00 and L=891.40);
加上下兩行
HH:H PRECISION6;
LL:L PRECISION6;

你會發覺 908.00 是 908.000061 而 891.40 是 891.400085
這是因為電腦運算精度的問題(單精度)

所以用此種判斷方式容易出錯
因為 908.00 <> 908.000061

要避開電腦計算精度的問題可用
vertline(INTPART(H*100)=90800 and INTPART(L*100)=89140);

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

註冊日期: Dec 2003
來  自:
文章數量: 291

這個方法是可以解目前的問題,可是就其他許多要用到相等的式子時,是不是也會遇到同樣的問題?總不能每一個公式都加intpart吧
難道不能系統內的數值就定位在小數點以下固定位數嗎?(其實在系統管理中早已訂為小數點以下兩位,還是有上述的問題發生)
要不然就是圖面上能顯出正確的電腦數值...這樣子也不用每次輸入一個查詢值時都要加兩個0

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

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

系統管理 指標數值顯示小數2位
是針對顯示小數位

很抱歉
系統是不能設計成 計算結果為固定小位數的
因為這無法通用於每種公式的需求
有些公式數值可能介於 0∼100
有些公式數值可能介於 0∼1
將計算結果固定小位數儲存
可能會導致某些公式計算上累計誤差會很大
例如
 0.856+0.724+0.623+0.164+0.534....
 用兩位和用三位算誤差會很多

一般的程式語言系統
也不會採這樣的設計
通常都以目前的計算精度處理完
再取要顯示的小位數

建議您改用參數來帶入, 使用上較方便
例如: vertline(INTPART(H*100)=N1 and INTPART(L*100)=N2);

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

註冊日期: Dec 2003
來  自:
文章數量: 291

引用:
最初由 cgjj 發表
建議您改用參數來帶入, 使用上較方便
例如: vertline(INTPART(H*100)=N1 and INTPART(L*100)=N2); [/B]


我本來就是用參數的
x:=barslast(intpart(100*H)=向下高點 and intpart(100*L)=對應低點);

但是這樣子做,輸入參數時就必得遷就100*H或100*L這個100,每個參數都要加上兩位數,無法就圖表上看到的數值直接輸入,雖然用了就習慣了,但總有一點遺憾

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

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

這樣就可以囉

cgjj 附帶上了此圖片:

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

註冊日期: Dec 2003
來  自:
文章數量: 291

這就對了,謝謝總版主指導

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

論壇跳轉:
主題評分:

論壇規定:
你不可以發表新主題
你不可以回覆文章
你不可以上傳附件
你不可以編輯自己的文章
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.  聯絡我們