mirror of
https://github.com/injoyai/tdx.git
synced 2025-11-26 21:25:35 +08:00
兼容代码传参方式,个股可以忽略交易所标识,例sz000001,可以传000001
This commit is contained in:
@@ -233,6 +233,7 @@ func (this *Client) GetMinute(code string) (*protocol.MinuteResp, error) {
|
|||||||
|
|
||||||
// GetMinuteTrade 获取分时交易详情,服务器最多返回1800条,count-start<=1800
|
// GetMinuteTrade 获取分时交易详情,服务器最多返回1800条,count-start<=1800
|
||||||
func (this *Client) GetMinuteTrade(code string, start, count uint16) (*protocol.MinuteTradeResp, error) {
|
func (this *Client) GetMinuteTrade(code string, start, count uint16) (*protocol.MinuteTradeResp, error) {
|
||||||
|
code = protocol.AddPrefix(code)
|
||||||
f, err := protocol.MMinuteTrade.Frame(code, start, count)
|
f, err := protocol.MMinuteTrade.Frame(code, start, count)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
@@ -267,6 +268,7 @@ func (this *Client) GetMinuteTradeAll(code string) (*protocol.MinuteTradeResp, e
|
|||||||
// 只能获取昨天及之前的数据,服务器最多返回2000条,count-start<=2000,如果日期输入错误,则返回0
|
// 只能获取昨天及之前的数据,服务器最多返回2000条,count-start<=2000,如果日期输入错误,则返回0
|
||||||
// 历史数据sz000001在20241116只能查到21111112,13年差几天,3141天,或者其他规则
|
// 历史数据sz000001在20241116只能查到21111112,13年差几天,3141天,或者其他规则
|
||||||
func (this *Client) GetHistoryMinuteTrade(date, code string, start, count uint16) (*protocol.HistoryMinuteTradeResp, error) {
|
func (this *Client) GetHistoryMinuteTrade(date, code string, start, count uint16) (*protocol.HistoryMinuteTradeResp, error) {
|
||||||
|
code = protocol.AddPrefix(code)
|
||||||
f, err := protocol.MHistoryMinuteTrade.Frame(date, code, start, count)
|
f, err := protocol.MHistoryMinuteTrade.Frame(date, code, start, count)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
@@ -299,6 +301,7 @@ func (this *Client) GetHistoryMinuteTradeAll(date, code string) (*protocol.Histo
|
|||||||
|
|
||||||
// GetKline 获取k线数据,推荐收盘之后获取,否则会获取到当天的数据
|
// GetKline 获取k线数据,推荐收盘之后获取,否则会获取到当天的数据
|
||||||
func (this *Client) GetKline(Type uint8, code string, start, count uint16) (*protocol.KlineResp, error) {
|
func (this *Client) GetKline(Type uint8, code string, start, count uint16) (*protocol.KlineResp, error) {
|
||||||
|
code = protocol.AddPrefix(code)
|
||||||
f, err := protocol.MKline.Frame(Type, code, start, count)
|
f, err := protocol.MKline.Frame(Type, code, start, count)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
|||||||
@@ -50,6 +50,7 @@ func UTF8ToGBK(text []byte) []byte {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func DecodeCode(code string) (Exchange, string, error) {
|
func DecodeCode(code string) (Exchange, string, error) {
|
||||||
|
code = AddPrefix(code)
|
||||||
if len(code) != 8 {
|
if len(code) != 8 {
|
||||||
return 0, "", fmt.Errorf("股票代码长度错误,例如:SZ000001")
|
return 0, "", fmt.Errorf("股票代码长度错误,例如:SZ000001")
|
||||||
}
|
}
|
||||||
@@ -212,3 +213,18 @@ func IsStock(code string) bool {
|
|||||||
}
|
}
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// AddPrefix 添加股票代码前缀,针对股票生效,例如000001,会增加前缀sz000001(平安银行),而不是sh000001(上证指数)
|
||||||
|
func AddPrefix(code string) string {
|
||||||
|
if len(code) == 6 {
|
||||||
|
switch {
|
||||||
|
case code[:1] == "6":
|
||||||
|
code = ExchangeSH.String() + code
|
||||||
|
case code[:1] == "0":
|
||||||
|
code = ExchangeSZ.String() + code
|
||||||
|
case code[:2] == "30":
|
||||||
|
code = ExchangeSZ.String() + code
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return code
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user