 |
B123343
初級會員

註冊日期: Jul 2007
來 自: 台中市
文章數量: 5 |
函數問題
您好:
問題一:請問可以看到內建函數(例如:MA.Peak)的程式碼嗎?
問題二:請問可以自建函數嗎?
問題三:如果可以自建函數,以下用TS寫的自建函數,該如何轉為奇狐程式?
Parameter: Price(Numeric), BK(Numeric), EK(Numeric);
Variables: Counter(0), MyHigh(0), DayNum(0);
MyHigh = -999999;
For Counter = BK To EK Begin
IF Price[Counter] >= MyHigh Then
MyHigh = Price[Counter];
End;
HP = MyHigh;
這個函數的Price可以是Open.High,Low,Close,Volume
HP是求算特定區間的最高Open(High,Low,Close,Volume)
例如:HP(Open,10,30) 求算前10K~前30K區間的最高開盤價
例如:HP(Close,TROUGHBARS(2,10,1),TROUGHBARS(2,10,2))求算二個波谷間的最高收盤價
與hhv(Open,n)類似,但可以指定特定區間
謝謝

|
|
向版主報告此篇 |  |
|
2010-07-03 12:39 |
|
|
|  |
 |
cgjj
總版主

註冊日期: Oct 2003
來 自:
文章數量: 18145 |
回覆: 函數問題
引用: 最初由 B123343 發表
您好:
問題一:請問可以看到內建函數(例如:MA.Peak)的程式碼嗎?
問題二:請問可以自建函數嗎?
問題三:如果可以自建函數,以下用TS寫的自建函數,該如何轉為奇狐程式?
Parameter: Price(Numeric), BK(Numeric), EK(Numeric);
Variables: Counter(0), MyHigh(0), DayNum(0);
MyHigh = -999999;
For Counter = BK To EK Begin
IF Price[Counter] >= MyHigh Then
MyHigh = Price[Counter];
End;
HP = MyHigh;
這個函數的Price可以是Open.High,Low,Close,Volume
HP是求算特定區間的最高Open(High,Low,Close,Volume)
例如:HP(Open,10,30) 求算前10K~前30K區間的最高開盤價
例如:HP(Close,TROUGHBARS(2,10,1),TROUGHBARS(2,10,2))求算二個波谷間的最高收盤價
與hhv(Open,n)類似,但可以指定特定區間
謝謝
建議您提出算法而非 TS原碼
因為同樣的程序, 跑出的結果不見的相同
原因在於不同系統運算基礎不盡相同
有實例要協助您會較容易唷
|
|
向版主報告此篇 |  |
|
2010-07-06 21:33 |
|
|
|  |
 |
cgjj
總版主

註冊日期: Oct 2003
來 自:
文章數量: 18145 |
回覆: 函數問題
引用: 最初由 B123343 發表
這個函數的Price可以是Open.High,Low,Close,Volume
HP是求算特定區間的最高Open(High,Low,Close,Volume)
例如:HP(Open,10,30) 求算前10K~前30K區間的最高開盤價
例如:HP(Close,TROUGHBARS(2,10,1),TROUGHBARS(2,10,2))求算二個波谷間的最高收盤價
與hhv(Open,n)類似,但可以指定特定區間
謝謝
例如:求算前10K~前30K區間的最高開盤價
在奇狐中您可這樣算:
HP:REF(HHV(open,20),10);
其他狀況:
您可搭配 REF 和 BARSLAST 與 HHV 來組合應用
就可應付許多這類需求
|
|
向版主報告此篇 |  |
|
2010-07-06 21:54 |
|
|
|  |
 |
B123343
初級會員

註冊日期: Jul 2007
來 自: 台中市
文章數量: 5 |
我已是貴公司用戶
我的需求是將TS程式轉換至奇狐
要求算前10K~30K區間最高價
可以用:REF(HHV(H,20),10)我知道
但我在TS寫的一些小函數,觀念上類似HP(X,起始K棒,終點K棒)
因此,想藉詢問HP函數在奇狐的寫法,了解奇狐程式的使用,並自行將其他小函數轉換過來
貴公司的函數程式碼我看不到,所以第一個問題您沒有回答
第二個問題是:是否可以自己寫個小函數(類似MA),以供編寫交易系統時引用
對於VBScript的使用,說明主題案例我看不懂,可否舉簡單點的,例如MA函數用VB怎麼寫,
如果不能自行寫函數供條件選股或交易系統引用
那麼應用VBScript寫的小函數(例如MA)在條件選股或交易系統程式裡該如何編排與引用
|
|
向版主報告此篇 |  |
|
2010-07-07 13:09 |
|
|
|  |
 |
cgjj
總版主

註冊日期: Oct 2003
來 自:
文章數量: 18145 |
引用: 最初由 B123343 發表
我已是貴公司用戶
我的需求是將TS程式轉換至奇狐
要求算前10K~30K區間最高價
可以用:REF(HHV(H,20),10)我知道
但我在TS寫的一些小函數,觀念上類似HP(X,起始K棒,終點K棒)
因此,想藉詢問HP函數在奇狐的寫法,了解奇狐程式的使用,並自行將其他小函數轉換過來
貴公司的函數程式碼我看不到,所以第一個問題您沒有回答
第二個問題是:是否可以自己寫個小函數(類似MA),以供編寫交易系統時引用
對於VBScript的使用,說明主題案例我看不懂,可否舉簡單點的,例如MA函數用VB怎麼寫,
如果不能自行寫函數供條件選股或交易系統引用
那麼應用VBScript寫的小函數(例如MA)在條件選股或交易系統程式裡該如何編排與引用
奇狐已經內建非常豐富的函數
雖然目前沒有提供自創函數的功能
但您可以把函數要運算的式子
改為直接插入於程式碼當中
兩種運算之結果並無任何差異(僅差在方便性)
不會因為沒有提供自創函數,讓撰寫功能上有所不足
以內建的 MA 為例
MM: MA(Close,10);
相等於
MM: SUM(Close,10)/10;
奇狐語法不等於 VBScript 語法
但奇狐可內嵌入 VBScript 程式
可將變數導入 VBScript 程式之中做計算
也可將 VBScript 程式計算結果導回給奇狐變數
VBScript 自創的函數必需在 VBScript程式中應用完畢
奇狐無法直接呼叫 VBScript 中自創的函數
但您可將 VBScript 自創函數算後的結果, 導回至奇狐變數之中
|
|
向版主報告此篇 |  |
|
2010-07-07 13:44 |
|
|
|  |
本站所有內容未經作者授權禁止轉貼節錄, 發表言論僅供參考勿作為投資決策依據。瀏覽本站請使用 IE 5.5 以上版本, 最佳瀏覽解析度 1024 x 768 全彩。
|
Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.
簡愛洋行 製作 Copyright 2003-. All Rights Reserved. 聯絡我們
|