C#技術分析API使用手冊
C#技術分析API範例程式
3. 執行Sample
1
設定帳號密碼
輸入完成後點按下登入
2
技術指標
1 | 設定商品, 輸入證券代碼 |
2 | 設定日期(當日,起始日期) |
3 | 設定分K, 輸入1 ,3, 5K |
4 | 設定技術指標, 輸入SMA, EMA, WMA, SAR, RSI, MACD, KD, CDP |
5 | 設定計算週期 |
回傳結果(SMA,1K,Opr:1)
3
歷史成交
1 | 設定商品, 輸入證券代碼 |
2 | 設定歷史日期 |
回傳結果
4. 回報狀態事件
4.1 TACallBack_OnUpdate
說明 | 回傳即時股票資料 |
---|
void TACallBack_OnRcvDone(object sender, object aResult)//指標回補
參數 | 類別 | 說明 |
---|---|---|
Sender | object | TA_BASE |
aResult | object | List TRes_SMA, TRes_WMA, TRes_EMA, TRes_SAR, TRes_RSI, TRes_DIF, TRes_KD, TRes_CDP, TRes_BBands |
class TA_BASE:
參數 | 類別 | 說明 |
---|---|---|
Opr | decimal | 週期 |
TSubTARec | class | 訂閱參數 |
4.2 TACallBack_OnRcvDone
說明 | 回傳歷史回補資料 |
---|
void TACallBack_OnUpdate(object sender, object aResultPre, object aResultLast)//指標即時最新兩根K的值
參數 | 類別 | 說明 |
---|---|---|
Sender | object | TA_BASE |
aResultPre | object | 前一筆技術指標資料TRes_SMA, TRes_WMA, TRes_EMA, TRes_SAR, TRes_RSI, TRes_DIF, TRes_KD, TRes_CDP, TRes_BBands |
aResultLast | object | 最新一筆技術指標資料TRes_SMA, TRes_WMA, TRes_EMA, TRes_SAR, TRes_RSI, TRes_DIF, TRes_KD, TRes_CDP, TRes_BBands |
5. API物件欄位說明
5.1 回傳類別共通部分TKBarRec
class TKBarRec
參數名稱 | 型別 | 說明 |
---|---|---|
Date | string | 日期 |
Product | string | 商品代號 |
TimeSn | int | 時間 |
TimeSn_Dply | int | 時間 |
Quantity | int | 量 |
Volume | int | 總量 |
OPrice | decimal | 開盤價 |
HPrice | decimal | 最高價 |
LPrice | decimal | 最低價 |
CPrice | decimal | 收盤價 |
5.2 SMA: 簡單移動平均線
週期 | 20 |
---|
class TRes_SMA
參數 | 類別 | 說明 |
---|---|---|
Value | decimal | SMA值 |
5.3 WMA: 加權移動平均線
週期 | 5 |
---|
class TRes_WMA
參數 | 類別 | 說明 |
---|---|---|
Value | decimal | WMA值 |
5.4 EMA: 指數移動平均線
週期 | 5 |
---|
class TRes_EMA
參數 | 類別 | 說明 |
---|---|---|
Value | decimal | EMA值 |
5.5 KD: 隨機指標
週期 | 9 |
---|---|
RSV移動平均週期 | 3 |
class TRes_KD
參數 | 類別 | 說明 |
---|---|---|
K | decimal | K值 |
D | decimal | D值 |
5.6 MACD: 指數平滑異同移動平均線
短週期 | 12 |
---|---|
長週期 | 26 |
DIF週期 | 9 |
class TRes_DIF
參數 | 類別 | 說明 |
---|---|---|
DIF | decimal | DIF值 |
OSC | float | OSC值 |
5.7 SAR: 拋物線指標
加速因子起始值 | 0.02M |
---|---|
加速因子遞增值 | 0.02M |
加速因子最大值 | 0.2M |
class TRes_SAR
參數 | 類別 | 說明 |
---|---|---|
SAR | decimal | SAR值 |
EPh | decimal | Extreme High |
EPl | decimal | Extreme Low |
AF | decimal | 加速因子 |
RaiseFall | decimal | 漲跌勢 |
5.8 RSI: 相對強弱指標
週期 | 6 |
---|
class TRes_RSI
參數 | 類別 | 說明 |
---|---|---|
RSI | decimal | RSI值 |
UpDn | decimal | UpDn值 |
UpAvg | decimal | UpAvg值 |
DnAvg | decimal | DnAvg值 |
5.9 CDP: 逆勢操作系統
class TRes_CDP
參數 | 類別 | 說明 |
---|---|---|
CDP | decimal | RSI值 |
AH | decimal | 最高值 |
NH | decimal | 近高值 |
AL | decimal | 最低值 |
NL | decimal | 近低值 |
5.10 BBands:布林通道
週期 | 20 |
---|---|
上值加幾倍標準差 | 2 |
下值減幾倍標準差 | 2 |
5.11 TSubTARec訂閱參數
class TSubTARec
參數 | 類別 | 說明 |
---|---|---|
DateBegin | string | 起始日期(ex. yyyyMMdd) |
NK | Enum | 分K(class eNK_Kind) |
ParamObj | Class | 技術指標參數 |
PROC_CallBack_RcvDone | callback | 歷史回補技術指標(事件TACallBack_OnUpdate) |
PROC_CallBack_Update | callback | 即時技術指標(事件TACallBack_OnRcvDone) |
ProdID | string | 股票代碼 |
TA_Type | Enum | 技術指標(class eTA_Type) |
5.12 TUnSubTARec取消訂閱參數
class eTA_Type
參數 | 類別 | 說明 |
---|---|---|
NK | Enum | 分K(class eNK_Kind) |
ParamObj | Class | 技術指標參數 |
ProdID | string | 股票代碼 |
TA_Type | Enum | 技術指標(class eTA_Type) |
5.13 eTA_Type技術指標
class eTA_Type
參數 | 類別 | 說明 |
---|---|---|
SMA | Enum | Value=0 |
WMA | Enum | Value=1 |
EMA | Enum | Value=2 |
KD | Enum | Value=3 |
MACD | Enum | Value=4 |
SAR | Enum | Value=5 |
RSI | Enum | Value=6 |
CDP | Enum | Value=7 |
5.14 eNK_Kind分K
class eNK_Kind
參數 | 類別 | 說明 |
---|---|---|
DAY | Enum | Value=0 |
K_1m | Enum | Value=1 |
K_3m | Enum | Value=2 |
K_5m | Enum | Value=5 |
5.15 TBSRec, TSubBSRec歷史成交資料
class TSubBSRec
參數 | 類別 | 說明 |
---|---|---|
Date | string | 歷史日期 |
ProdID | string | 商品代號 |
class TBSRec
參數 | 類別 | 說明 |
---|---|---|
Prod | String | 商品代號 |
Sequence | Int | 成交序號 |
Match_Time | decimal | 成交時間 |
Match_Price | decimal | 成交價 |
Match_Quantity | Int | 成交單量 |
Match_Volume | Int | 成交總量 |
Is_TryMatch | Bool | 是否為試撮 |
BS | Int | 0=無法辨別, 1=內盤, 2=外盤 |
BP_1_Pre | decimal | 前買1價 |
SP_1_Pre | decimal | 前賣1價 |
C#技術分析API實作使用說明
物件建構:
TTechAnalysisAPI:主要控制模組
1. 初始化
fTechAnalysisAPI = new TTechAnalysisAPI();
fTechAnalysisAPI.OnTAConnStuEvent += TechAnalysisAPI_OnTAConnStuEvent;//回傳連線狀態
2. 登入
fTechAnalysisAPI.Login(sID, sPwd);
Login
輸入/輸出 | 欄位名稱 | 格式 | 說明 |
---|---|---|---|
In | aUsername | String | 使用者名稱 |
In | aPassword | String | 使用者密碼 |
3. 訂閱技術指標
fTechAnalysisAPI.SubTA(tmpSubTA, out sErrMsg)
SubTA
輸入/輸出 | 欄位名稱 | 格式 | 說明 |
---|---|---|---|
In | TSubTARec | class | 指標設定參數 |
out | sErrMsg | string | 回傳錯誤訊息 |
tmpSubTA參考5.11 TSubTARec訂閱參數
4. 取消訂閱技術指標
fTechAnalysisAPI.UnSubTA(tmpUnSubTA, out sErrMsg)
UnSubTA
輸入/輸出 | 欄位名稱 | 格式 | 說明 |
---|---|---|---|
In | TUnSubTARec | class | 指標設定參數 |
out | sErrMsg | string | 回傳錯誤訊息 |
tmpUnSubTA參考5.12 TUnSubTARec取消訂閱參數
5. 歷史成交資訊(不含今日)
fTechAnalysisAPI.GetHisBS_Stock(tmpSub, out lsBS, out sErrMsg)
輸入/輸出 | 欄位名稱 | 格式 | 說明 |
---|---|---|---|
In | TSubBSRec | class | 歷史成交參數 |
In | TObjBSRecLSS | class | 歷史成交資訊 |
out | sErrMsg | string | 回傳錯誤訊息 |
tmpSub, lsBS參考5.15 TBSRec, TSubBSRec歷史成交資料