futuapi

package module
v0.0.0-...-e1eba21 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 17, 2024 License: MIT Imports: 75 Imported by: 0

README

富途OpenAPI Golang SDK

简介

  • Go语言封装的富途牛牛OpenAPI
  • 尽量接近Python版本的使用方法。
  • 利用Go语言特性,例如channel,goroutine等。
  • 暂时还不支持加密,因为底层API对initconnect用的是RSA算法,其他接口是AES,这样对架构设计改动较大,后期再考虑增加
  • 注意:该SDK仍在v0版本,不保证与旧版本兼容,也没有经过充分测试,使用时候请注意,可以直接向我反馈bug或者改进建议

代码结构

TCP连接层
富途协议层
API接口层

使用方法

  1. import

    import "github.com/CCLooMi/go-futu-api"
    
  2. 创建API实例

    ft := futuapi.NewFutuAPI()
    
  3. 设置连接参数

    ft.SetClientInfo("MyFutuAPI", 0)
    
  4. 连接FutuOpenD

    ft.Connect(context.Background(), ":11111")
    
  5. 调用获取方法

    sub, err := ft.QuerySubscription(context.Background(), true)
    
  6. 接收推送

    ch, err := api.UpdateTicker(context.Background())
    // ch 为 channel类型,<- ch接收推送
    

Change Log

  • 更新了接口列表,删除了失效的接口,补充新接口,修改接口的参数等
  • 去掉自定义的数据结构,直接使用protobuf编译出来的结构,update类型的数据,返回整个Response消息
  • 对于个别get类型的接口,简化返回结构体嵌套,例如返回的数据中只有一项是有意义的,直接返回该字段
  • 删除自动根据protobuf类型编译自定义类型的代码,改为reflection操作channel数据发送

Documentation

Index

Constants

View Source
const (
	ProtoIDInitConnect        = 1001 //InitConnect	初始化连接
	ProtoIDGetGlobalState     = 1002 //GetGlobalState	获取全局状态
	ProtoIDNotify             = 1003 //Notify	系统通知推送
	ProtoIDKeepAlive          = 1004 //KeepAlive	保活心跳
	ProtoIDGetUserInfo        = 1005 //GetUserInfo 获取用户信息
	ProtoIDVerification       = 1006 // 请求或输入验证码
	ProtoIDGetDelayStatistics = 1007 //GetDelayStatistics  获取延迟统计
)
View Source
const ProtoIDQotGetBasicQot = 3004 //Qot_GetBasicQot	获取股票基本报价
View Source
const ProtoIDQotGetBroker = 3014 //Qot_GetBroker	获取经纪队列
View Source
const ProtoIDQotGetCapitalDistribution = 3212 //Qot_GetCapitalDistribution 获取资金分布
View Source
const ProtoIDQotGetCapitalFlow = 3211 //Qot_GetCapitalFlow	获取资金流向
View Source
const ProtoIDQotGetCodeChange = 3216 //Qot_GetCodeChange 代码变换
View Source
const ProtoIDQotGetFutureInfo = 3218 //Qot_GetFutureInfo	获取期货合约资料
View Source
const ProtoIDQotGetHoldingChangeList = 3208 //Qot_GetHoldingChangeList 获取高管持股变动
View Source
const ProtoIDQotGetIpoList = 3217 //Qot_GetIpoList	获取新股
View Source
const ProtoIDQotGetKL = 3006 //Qot_GetKL	获取 K 线
View Source
const ProtoIDQotGetMarketState = 3223 //Qot_GetMarketState	获取指定品种的市场状态
View Source
const ProtoIDQotGetOptionChain = 3209 //Qot_GetOptionChain	获取期权链
View Source
const ProtoIDQotGetOptionExpirationDate = 3224 //Qot_GetOptionExpirationDate 获取期权到期日
View Source
const ProtoIDQotGetOrderBook = 3012 //Qot_GetOrderBook	获取买卖盘
View Source
const ProtoIDQotGetOwnerPlate = 3207 //Qot_GetOwnerPlate	获取股票所属板块
View Source
const ProtoIDQotGetPlateSecurity = 3205 //Qot_GetPlateSecurity	获取板块下的股票
View Source
const ProtoIDQotGetPlateSet = 3204 //Qot_GetPlateSet	获取板块集合下的板块
View Source
const ProtoIDQotGetPriceReminder = 3221 //Qot_GetPriceReminder	获取到价提醒
View Source
const ProtoIDQotGetRT = 3008 //Qot_GetRT	获取分时
View Source
const ProtoIDQotGetReference = 3206 //Qot_GetReference	获取正股相关股票
View Source
const ProtoIDQotGetSecuritySnapshot = 3203 //Qot_GetSecuritySnapshot	获取股票快照
View Source
const ProtoIDQotGetStaticInfo = 3202 //Qot_GetStaticInfo	获取股票静态信息
View Source
const ProtoIDQotGetSubInfo = 3003 //Qot_GetSubInfo	获取订阅信息
View Source
const ProtoIDQotGetSuspend = 3201 //Qot_GetSuspend 获取股票停牌信息
View Source
const ProtoIDQotGetTicker = 3010 //Qot_GetTicker	获取逐笔
View Source
const ProtoIDQotGetUserSecurity = 3213 //Qot_GetUserSecurity	获取自选股分组下的股票
View Source
const ProtoIDQotGetUserSecurityGroup = 3222 //Qot_GetUserSecurityGroup	获取自选股分组列表
View Source
const ProtoIDQotGetWarrant = 3210 //Qot_GetWarrant	获取窝轮
View Source
const ProtoIDQotModifyUserSecurity = 3214 //Qot_ModifyUserSecurity	修改自选股分组下的股票
View Source
const ProtoIDQotRegQotPush = 3002 // Qot_RegQotPush 注册推送
View Source
const ProtoIDQotRequestHistoryKL = 3103 //Qot_RequestHistoryKL	在线获取单只股票一段历史 K 线
View Source
const ProtoIDQotRequestHistoryKLQuota = 3104 //Qot_RequestHistoryKLQuota	获取历史 K 线额度
View Source
const ProtoIDQotRequestRehab = 3105 //Qot_RequestRehab	在线获取单只股票复权信息
View Source
const ProtoIDQotRequestTradeDate = 3219 //Qot_RequestTradeDate	获取市场交易日,在线拉取不在本地计算
View Source
const ProtoIDQotSetPriceReminder = 3220 //Qot_SetPriceReminder	设置到价提醒
View Source
const ProtoIDQotStockFilter = 3215 //Qot_StockFilter	获取条件选股
View Source
const ProtoIDQotSub = 3001 //Qot_Sub	订阅或者反订阅
View Source
const (
	ProtoIDQotUpdateBasicQot = 3005 //Qot_UpdateBasicQot	推送股票基本报价

)
View Source
const ProtoIDQotUpdateBroker = 3015 //Qot_UpdateBroker	推送经纪队列
View Source
const ProtoIDQotUpdateKL = 3007 //Qot_UpdateKL	推送 K 线
View Source
const ProtoIDQotUpdateOrderBook = 3013 //Qot_UpdateOrderBook	推送买卖盘
View Source
const ProtoIDQotUpdatePriceReminder = 3019 //Qot_UpdatePriceReminder	到价提醒通知
View Source
const ProtoIDQotUpdateRT = 3009 //Qot_UpdateRT	推送分时
View Source
const ProtoIDQotUpdateTicker = 3011 //Qot_UpdateTicker	推送逐笔
View Source
const ProtoIDTrdGetAccList = 2001 //Trd_GetAccList	获取业务账户列表
View Source
const ProtoIDTrdGetFunds = 2101 //Trd_GetFunds	获取账户资金
View Source
const ProtoIDTrdGetHistoryOrderFillList = 2222 //Trd_GetHistoryOrderFillList	获取历史成交列表
View Source
const ProtoIDTrdGetHistoryOrderList = 2221 //Trd_GetHistoryOrderList	获取历史订单列表
View Source
const ProtoIDTrdGetMarginRatio = 2223 // Trd_GetMarginRatio 获取融资融券数据
View Source
const ProtoIDTrdGetMaxTrdQtys = 2111 //Trd_GetMaxTrdQtys	获取最大交易数量
View Source
const ProtoIDTrdGetOrderFillList = 2211 //Trd_GetOrderFillList	获取成交列表
View Source
const ProtoIDTrdGetOrderList = 2201 //Trd_GetOrderList	获取订单列表
View Source
const ProtoIDTrdGetPositionList = 2102 //Trd_GetPositionList	获取账户持仓
View Source
const ProtoIDTrdModifyOrder = 2205 //Trd_ModifyOrder
View Source
const ProtoIDTrdPlaceOrder = 2202 //Trd_PlaceOrder	下单
View Source
const ProtoIDTrdSubAccPush = 2008 //Trd_SubAccPush	订阅业务账户的交易推送数据
View Source
const ProtoIDTrdUnlockTrade = 2005 //Trd_UnlockTrade	解锁或锁定交易
View Source
const ProtoIDTrdUpdateOrder = 2208 //Trd_UpdateOrder	推送订单状态变动通知
View Source
const ProtoIDTrdUpdateOrderFill = 2218 //Trd_UpdateOrderFill	推送成交通知

Variables

View Source
var (
	ErrParameters    = errors.New("parameters missing or invalid")
	ErrInterrupted   = errors.New("process is interrupted")
	ErrChannelClosed = errors.New("channel is closed")
)

Functions

This section is empty.

Types

type FutuAPI

type FutuAPI struct {
	// contains filtered or unexported fields
}

FutuAPI 是富途开放API的主要操作对象。

func NewFutuAPI

func NewFutuAPI() *FutuAPI

NewFutuAPI 创建API对象,并启动goroutine进行发送保活心跳.

func (*FutuAPI) Close

func (api *FutuAPI) Close(ctx context.Context) error

关闭连接

func (*FutuAPI) ConnID

func (api *FutuAPI) ConnID() uint64

获取连接 ID,连接初始化成功后才会有值

func (*FutuAPI) Connect

func (api *FutuAPI) Connect(ctx context.Context, address string) error

连接FutuOpenD

func (*FutuAPI) GetAccList

func (api *FutuAPI) GetAccList(ctx context.Context,
	category trdcommon.TrdCategory, generalAcc *OptionalBool) ([]*trdcommon.TrdAcc, error)

获取交易业务账户列表

func (*FutuAPI) GetBrokerQueue

func (api *FutuAPI) GetBrokerQueue(ctx context.Context, security *qotcommon.Security) (*qotgetbroker.S2C, error)

获取实时经纪队列

func (*FutuAPI) GetCapitalDistribution

func (api *FutuAPI) GetCapitalDistribution(ctx context.Context, security *qotcommon.Security) (*qotgetcapitaldistribution.S2C, error)

获取资金分布

func (*FutuAPI) GetCapitalFlow

func (api *FutuAPI) GetCapitalFlow(ctx context.Context, security *qotcommon.Security,
	periodType qotcommon.PeriodType, begin string, end string) (*qotgetcapitalflow.S2C, error)

获取资金流向

func (*FutuAPI) GetCodeChange

func (api *FutuAPI) GetCodeChange(ctx context.Context, placeholder int32,
	securities []*qotcommon.Security, timeFilter []*qotgetcodechange.TimeFilter, typeList []qotgetcodechange.CodeChangeType) ([]*qotgetcodechange.CodeChangeInfo, error)

func (*FutuAPI) GetCurKLine

func (api *FutuAPI) GetCurKLine(ctx context.Context, security *qotcommon.Security, num int32, rehabType qotcommon.RehabType, klType qotcommon.KLType) (*qotgetkl.S2C, error)

获取实时 K 线

func (*FutuAPI) GetDealList

func (api *FutuAPI) GetDealList(ctx context.Context, header *trdcommon.TrdHeader,
	filter *trdcommon.TrdFilterConditions, refresh *OptionalBool) ([]*trdcommon.OrderFill, error)

查询当日成交

func (*FutuAPI) GetDelayStatistics

func (api *FutuAPI) GetDelayStatistics(ctx context.Context, typeList []getdelaystatistics.DelayStatisticsType,
	pushStage getdelaystatistics.QotPushStage, segmentList []int32) (*getdelaystatistics.S2C, error)

获取延迟统计

func (*FutuAPI) GetFunds

func (api *FutuAPI) GetFunds(ctx context.Context, header *trdcommon.TrdHeader,
	refresh *OptionalBool, currency trdcommon.Currency) (*trdcommon.Funds, error)

查询账户资金

func (*FutuAPI) GetFutureInfo

func (api *FutuAPI) GetFutureInfo(ctx context.Context, securities []*qotcommon.Security) ([]*qotgetfutureinfo.FutureInfo, error)

获取期货合约资料

func (*FutuAPI) GetGlobalState

func (api *FutuAPI) GetGlobalState(ctx context.Context) (*getglobalstate.S2C, error)

获取全局状态

func (*FutuAPI) GetHistoryDeal

func (api *FutuAPI) GetHistoryDeal(ctx context.Context, header *trdcommon.TrdHeader, filter *trdcommon.TrdFilterConditions) ([]*trdcommon.OrderFill, error)

查询历史成交

func (*FutuAPI) GetHistoryKLQuota

func (api *FutuAPI) GetHistoryKLQuota(ctx context.Context, detail bool) (*qotrequesthistoryklquota.S2C, error)

func (*FutuAPI) GetHistoryOrderList

func (api *FutuAPI) GetHistoryOrderList(ctx context.Context, header *trdcommon.TrdHeader, filter *trdcommon.TrdFilterConditions,
	status []trdcommon.OrderStatus) ([]*trdcommon.Order, error)

查询历史订单

func (*FutuAPI) GetHoldingChangeList

func (api *FutuAPI) GetHoldingChangeList(ctx context.Context, security *qotcommon.Security, holder qotcommon.HolderCategory,
	begin string, end string) (*qotgetholdingchangelist.S2C, error)

获取高管持股变动

func (*FutuAPI) GetIPOList

func (api *FutuAPI) GetIPOList(ctx context.Context, market qotcommon.QotMarket) ([]*qotgetipolist.IpoData, error)

获取 IPO 信息

func (*FutuAPI) GetMarginRatio

func (api *FutuAPI) GetMarginRatio(ctx context.Context, header *trdcommon.TrdHeader, securities []*qotcommon.Security) ([]*trdgetmarginratio.MarginRatioInfo, error)

获取融资融券数据

func (*FutuAPI) GetMarketSnapshot

func (api *FutuAPI) GetMarketSnapshot(ctx context.Context, securities []*qotcommon.Security) ([]*qotgetsecuritysnapshot.Snapshot, error)

获取快照

func (*FutuAPI) GetMarketState

func (api *FutuAPI) GetMarketState(ctx context.Context, securities []*qotcommon.Security) ([]*qotgetmarketstate.MarketInfo, error)

获取标的市场状态

func (*FutuAPI) GetMaxTrdQtys

func (api *FutuAPI) GetMaxTrdQtys(ctx context.Context, header *trdcommon.TrdHeader, orderType trdcommon.OrderType, code string, price float64,
	orderID *OptionalUInt64, adjust *OptionalBool, sideAndLimit *OptionalDouble, secMarket trdcommon.TrdSecMarket, orderIDEx string) (*trdcommon.MaxTrdQtys, error)

查询最大可买可卖

func (*FutuAPI) GetOptionChain

获取期权链

func (*FutuAPI) GetOptionExpirationDate

func (api *FutuAPI) GetOptionExpirationDate(ctx context.Context, owner *qotcommon.Security,
	indexOptType qotcommon.IndexOptionType) ([]*getoptionexpirationdate.OptionExpirationDate, error)

func (*FutuAPI) GetOrderBook

func (api *FutuAPI) GetOrderBook(ctx context.Context, security *qotcommon.Security, num int32) (*qotgetorderbook.S2C, error)

获取实时摆盘

func (*FutuAPI) GetOrderList

func (api *FutuAPI) GetOrderList(ctx context.Context, header *trdcommon.TrdHeader,
	filter *trdcommon.TrdFilterConditions, status []trdcommon.OrderStatus, refresh *OptionalBool) ([]*trdcommon.Order, error)

查询今日订单

func (*FutuAPI) GetOwnerPlate

func (api *FutuAPI) GetOwnerPlate(ctx context.Context, securities []*qotcommon.Security) ([]*qotgetownerplate.SecurityOwnerPlate, error)

获取股票所属板块

func (*FutuAPI) GetPlateList

func (api *FutuAPI) GetPlateList(ctx context.Context, market qotcommon.QotMarket, plateClass qotcommon.PlateSetType) ([]*qotcommon.PlateInfo, error)

获取板块列表

func (*FutuAPI) GetPlateStock

func (api *FutuAPI) GetPlateStock(ctx context.Context, plate *qotcommon.Security, sortField qotcommon.SortField, ascend bool) ([]*qotcommon.SecurityStaticInfo, error)

获取板块内股票列表

func (*FutuAPI) GetPositionList

func (api *FutuAPI) GetPositionList(ctx context.Context, header *trdcommon.TrdHeader,
	filter *trdcommon.TrdFilterConditions, minPLRatio *OptionalDouble, maxPLRation *OptionalDouble, refresh *OptionalBool) ([]*trdcommon.Position, error)

查询持仓

func (*FutuAPI) GetPriceReminder

func (api *FutuAPI) GetPriceReminder(ctx context.Context, security *qotcommon.Security, market qotcommon.QotMarket) ([]*qotgetpricereminder.PriceReminder, error)

获取到价提醒列表

func (*FutuAPI) GetRTData

func (api *FutuAPI) GetRTData(ctx context.Context, security *qotcommon.Security) (*qotgetrt.S2C, error)

获取实时分时

func (*FutuAPI) GetRTTicker

func (api *FutuAPI) GetRTTicker(ctx context.Context, security *qotcommon.Security, num int32) (*qotgetticker.S2C, error)

func (*FutuAPI) GetReferenceStockList

func (api *FutuAPI) GetReferenceStockList(ctx context.Context, security *qotcommon.Security, refType qotgetreference.ReferenceType) ([]*qotcommon.SecurityStaticInfo, error)

获取证券关联数据

func (*FutuAPI) GetRehab

func (api *FutuAPI) GetRehab(ctx context.Context, security *qotcommon.Security) ([]*qotcommon.Rehab, error)

获取复权因子

func (*FutuAPI) GetStockBasicInfo

func (api *FutuAPI) GetStockBasicInfo(ctx context.Context, market qotcommon.QotMarket, secType qotcommon.SecurityType, securities []*qotcommon.Security) ([]*qotcommon.SecurityStaticInfo, error)

获取静态数据

func (*FutuAPI) GetStockFilter

func (api *FutuAPI) GetStockFilter(ctx context.Context, market qotcommon.QotMarket, begin int32, num int32,
	filter *StockFilter) (*qotstockfilter.S2C, error)

条件选股

func (*FutuAPI) GetStockQuote

func (api *FutuAPI) GetStockQuote(ctx context.Context, securities []*qotcommon.Security) ([]*qotcommon.BasicQot, error)

获取股票基本行情

func (*FutuAPI) GetSuspend

func (api *FutuAPI) GetSuspend(ctx context.Context, securities []*qotcommon.Security, begin string, end string) ([]*qotgetsuspend.SecuritySuspend, error)

func (*FutuAPI) GetUserInfo

func (api *FutuAPI) GetUserInfo(ctx context.Context, flag getuserinfo.UserInfoField) (*getuserinfo.S2C, error)

获取用户信息, flag = 0返回全部信息

func (*FutuAPI) GetUserSecurity

func (api *FutuAPI) GetUserSecurity(ctx context.Context, group string) ([]*qotcommon.SecurityStaticInfo, error)

获取自选股列表

func (*FutuAPI) GetUserSecurityGroup

func (api *FutuAPI) GetUserSecurityGroup(ctx context.Context, groupType qotgetusersecuritygroup.GroupType) ([]*qotgetusersecuritygroup.GroupData, error)

获取自选股分组

func (*FutuAPI) GetWarrant

func (api *FutuAPI) GetWarrant(ctx context.Context, begin int32, num int32, sortField qotcommon.SortField, ascend bool,
	filter *WarrantFilter) (*qotgetwarrant.S2C, error)

筛选窝轮

func (*FutuAPI) ModifyOrder

func (api *FutuAPI) ModifyOrder(ctx context.Context, header *trdcommon.TrdHeader, orderID uint64, op trdcommon.ModifyOrderOp, forAll bool,
	trdMarket trdcommon.TrdMarket, qty *OptionalDouble, price *OptionalDouble,
	adjust *OptionalBool, sideAndLimit *OptionalDouble, auxPrice *OptionalDouble,
	trailType trdcommon.TrailType, trailValue *OptionalDouble, trailSpread *OptionalDouble, orderIDEx string) (*trdmodifyorder.S2C, error)

改单撤单

func (*FutuAPI) ModifyUserSecurity

func (api *FutuAPI) ModifyUserSecurity(ctx context.Context, name string, op qotmodifyusersecurity.ModifyUserSecurityOp, securities []*qotcommon.Security) error

修改自选股列表

func (*FutuAPI) PlaceOrder

func (api *FutuAPI) PlaceOrder(ctx context.Context, header *trdcommon.TrdHeader, trdSide trdcommon.TrdSide, orderType trdcommon.OrderType, code string, qty float64,
	price *OptionalDouble, adjustPrice *OptionalBool, sideAndLimit *OptionalDouble, secMarket trdcommon.TrdSecMarket, remark string, timeInForce trdcommon.TimeInForce,
	fillOutsideRTH *OptionalBool, auxPrice *OptionalDouble, trailType trdcommon.TrailType, trailValue *OptionalDouble, trailSpread *OptionalDouble) (*trdplaceorder.S2C, error)

下单

func (*FutuAPI) QuerySubscription

func (api *FutuAPI) QuerySubscription(ctx context.Context, isAll bool) (*qotgetsubinfo.S2C, error)

获取订阅信息

func (*FutuAPI) RegQotPush

func (api *FutuAPI) RegQotPush(ctx context.Context, securities []*qotcommon.Security, subTypeList []qotcommon.SubType, isReg bool,
	rehabTypeList []qotcommon.RehabType, isFirstPush bool) error

func (*FutuAPI) RequestHistoryKLine

func (api *FutuAPI) RequestHistoryKLine(ctx context.Context, security *qotcommon.Security, begin string, end string, klType qotcommon.KLType, rehabType qotcommon.RehabType,
	maxNum *OptionalInt32, klFields qotcommon.KLFields, nextKey []byte, extTime *OptionalBool) (*qotrequesthistorykl.S2C, error)

获取历史 K 线

func (*FutuAPI) RequestTradingDays

func (api *FutuAPI) RequestTradingDays(ctx context.Context, market qotcommon.TradeDateMarket, begin string, end string,
	security *qotcommon.Security) ([]*qotrequesttradedate.TradeDate, error)

获取交易日

func (*FutuAPI) SetClientInfo

func (api *FutuAPI) SetClientInfo(id string, ver int32)

设置调用接口信息, 非必调接口

func (*FutuAPI) SetEncAlgo

func (api *FutuAPI) SetEncAlgo(algo common.PacketEncAlgo)

func (*FutuAPI) SetPriceReminder

设置到价提醒

func (*FutuAPI) SetProtoFmt

func (api *FutuAPI) SetProtoFmt(fmt common.ProtoFmt)

设置通讯协议 body 格式, 目前支持 Protobuf|Json 两种格式,默认 ProtoBuf, 非必调接口

func (*FutuAPI) SetRecvNotify

func (api *FutuAPI) SetRecvNotify(recv bool)

func (*FutuAPI) Subscribe

func (api *FutuAPI) Subscribe(ctx context.Context, securities []*qotcommon.Security, subTypes []qotcommon.SubType,
	regPush bool, isFirstPush bool, isSubOrderBookDetail bool, extTime bool) error

订阅注册需要的实时信息,指定股票和订阅的数据类型即可。 香港市场(含正股、窝轮、牛熊、期权、期货)订阅,需要 LV1 及以上的权限,BMP 权限下不支持订阅。

func (*FutuAPI) SubscribeTrd

func (api *FutuAPI) SubscribeTrd(ctx context.Context, accID []uint64) error

订阅交易推送

func (*FutuAPI) SysNotify

func (api *FutuAPI) SysNotify(ctx context.Context) (<-chan *notify.Response, error)

系统推送通知

func (*FutuAPI) UnlockTrade

func (api *FutuAPI) UnlockTrade(ctx context.Context, unlock bool,
	pwd string, isMD5 bool, firm trdcommon.SecurityFirm) error

解锁交易

func (*FutuAPI) Unsubscribe

func (api *FutuAPI) Unsubscribe(ctx context.Context, securities []*qotcommon.Security, subTypes []qotcommon.SubType) error

取消订阅

func (*FutuAPI) UnsubscribeAll

func (api *FutuAPI) UnsubscribeAll(ctx context.Context) error

取消所有订阅

func (*FutuAPI) UpdateBasicQot

func (api *FutuAPI) UpdateBasicQot(ctx context.Context) (<-chan *qotupdatebasicqot.Response, error)

实时报价回调

func (*FutuAPI) UpdateBroker

func (api *FutuAPI) UpdateBroker(ctx context.Context) (<-chan *qotupdatebroker.Response, error)

实时经纪队列回调

func (*FutuAPI) UpdateDeal

func (api *FutuAPI) UpdateDeal(ctx context.Context) (<-chan *trdupdateorderfill.Response, error)

响应成交推送回调

func (*FutuAPI) UpdateKL

func (api *FutuAPI) UpdateKL(ctx context.Context) (<-chan *qotupdatekl.Response, error)

实时 K 线回调

func (*FutuAPI) UpdateOrder

func (api *FutuAPI) UpdateOrder(ctx context.Context) (<-chan *trdupdateorder.Response, error)

响应订单推送回调

func (*FutuAPI) UpdateOrderBook

func (api *FutuAPI) UpdateOrderBook(ctx context.Context) (<-chan *qotupdateorderbook.Response, error)

实时摆盘回调

func (*FutuAPI) UpdatePriceReminder

func (api *FutuAPI) UpdatePriceReminder(ctx context.Context) (<-chan *qotupdatepricereminder.Response, error)

到价提醒回调

func (*FutuAPI) UpdateRT

func (api *FutuAPI) UpdateRT(ctx context.Context) (<-chan *qotupdatert.Response, error)

实时分时回调

func (*FutuAPI) UpdateTicker

func (api *FutuAPI) UpdateTicker(ctx context.Context) (<-chan *qotupdateticker.Response, error)

实时逐笔回调,异步处理已订阅股票的实时逐笔推送

func (*FutuAPI) UserID

func (api *FutuAPI) UserID() uint64

func (*FutuAPI) Verify

type OptionalBool

type OptionalBool struct {
	Value bool
}

type OptionalDouble

type OptionalDouble struct {
	Value float64
}

type OptionalInt32

type OptionalInt32 struct {
	Value int32
}

type OptionalUInt64

type OptionalUInt64 struct {
	Value uint64
}

type StockFilter

type StockFilter struct {
	Plate                     *qotcommon.Security                     // 板块
	BaseFilterList            []*qotstockfilter.BaseFilter            // 简单指标过滤器
	AccumulateFilterList      []*qotstockfilter.AccumulateFilter      // 累积指标过滤器
	FinancialFilterList       []*qotstockfilter.FinancialFilter       // 财务指标过滤器
	PatternFilterList         []*qotstockfilter.PatternFilter         // 形态技术指标过滤器
	CustomIndicatorFilterList []*qotstockfilter.CustomIndicatorFilter // 自定义技术指标过滤器
}

func (*StockFilter) Filter

func (filter *StockFilter) Filter(req *qotstockfilter.C2S)

type WarrantFilter

type WarrantFilter struct {
	Owner                 *qotcommon.Security     //所属正股
	TypeList              []qotcommon.WarrantType //Qot_Common.WarrantType,窝轮类型过滤列表
	IssuerList            []qotcommon.Issuer      //Qot_Common.Issuer,发行人过滤列表
	IpoPeriod             qotcommon.IpoPeriod     //Qot_Common.IpoPeriod,上市日
	PriceType             qotcommon.PriceType     //Qot_Common.PriceType,价内/价外(暂不支持界内证的界内外筛选)
	Status                qotcommon.WarrantStatus //Qot_Common.WarrantStatus,窝轮状态
	MaturityTimeMin       string                  //到期日,到期日范围的开始时间戳
	MaturityTimeMax       string                  //到期日范围的结束时间戳
	CurPriceMin           *OptionalDouble         //最新价的过滤下限(闭区间),不传代表下限为 -∞(精确到小数点后 3 位,超出部分会被舍弃)
	CurPriceMax           *OptionalDouble         //最新价的过滤上限(闭区间),不传代表上限为 +∞(精确到小数点后 3 位,超出部分会被舍弃)
	StrikePriceMin        *OptionalDouble         //行使价的过滤下限(闭区间),不传代表下限为 -∞(精确到小数点后 3 位,超出部分会被舍弃)
	StrikePriceMax        *OptionalDouble         //行使价的过滤上限(闭区间),不传代表上限为 +∞(精确到小数点后 3 位,超出部分会被舍弃)
	StreetMin             *OptionalDouble         //街货占比的过滤下限(闭区间),该字段为百分比字段,默认不展示 %,如 20 实际对应 20%。不传代表下限为 -∞(精确到小数点后 3 位,超出部分会被舍弃)
	StreetMax             *OptionalDouble         //街货占比的过滤上限(闭区间),该字段为百分比字段,默认不展示 %,如 20 实际对应 20%。不传代表上限为 +∞(精确到小数点后 3 位,超出部分会被舍弃)
	ConversionMin         *OptionalDouble         //换股比率的过滤下限(闭区间),不传代表下限为 -∞(精确到小数点后 3 位,超出部分会被舍弃)
	ConversionMax         *OptionalDouble         //换股比率的过滤上限(闭区间),不传代表上限为 +∞(精确到小数点后 3 位,超出部分会被舍弃)
	VolMin                *OptionalUInt64         //成交量的过滤下限(闭区间),不传代表下限为 -∞
	VolMax                *OptionalUInt64         //成交量的过滤上限(闭区间),不传代表上限为 +∞
	PremiumMin            *OptionalDouble         //溢价的过滤下限(闭区间),该字段为百分比字段,默认不展示 %,如 20 实际对应 20%。不传代表下限为 -∞(精确到小数点后 3 位,超出部分会被舍弃)
	PremiumMax            *OptionalDouble         //溢价的过滤上限(闭区间),该字段为百分比字段,默认不展示 %,如 20 实际对应 20%。不传代表上限为 +∞(精确到小数点后 3 位,超出部分会被舍弃)
	LeverageRatioMin      *OptionalDouble         //杠杆比率的过滤下限(闭区间),不传代表下限为 -∞(精确到小数点后 3 位,超出部分会被舍弃)
	LeverageRatioMax      *OptionalDouble         //杠杆比率的过滤上限(闭区间),不传代表上限为 +∞(精确到小数点后 3 位,超出部分会被舍弃)
	DeltaMin              *OptionalDouble         //对冲值的过滤下限(闭区间),仅认购认沽支持此字段过滤,不传代表下限为 -∞(精确到小数点后 3 位,超出部分会被舍弃)
	DeltaMax              *OptionalDouble         //对冲值的过滤上限(闭区间),仅认购认沽支持此字段过滤,不传代表上限为 +∞(精确到小数点后 3 位,超出部分会被舍弃)
	ImplieMin             *OptionalDouble         //引伸波幅的过滤下限(闭区间),仅认购认沽支持此字段过滤,不传代表下限为 -∞(精确到小数点后 3 位,超出部分会被舍弃)
	ImplieMax             *OptionalDouble         //引伸波幅的过滤上限(闭区间),仅认购认沽支持此字段过滤,不传代表上限为 +∞(精确到小数点后 3 位,超出部分会被舍弃)
	RecoveryPriceMin      *OptionalDouble         //收回价的过滤下限(闭区间),仅牛熊证支持此字段过滤,不传代表下限为 -∞(精确到小数点后 3 位,超出部分会被舍弃)
	RecoveryPriceMax      *OptionalDouble         //收回价的过滤上限(闭区间),仅牛熊证支持此字段过滤,不传代表上限为 +∞(精确到小数点后 3 位,超出部分会被舍弃)
	PriceRecoveryRatioMin *OptionalDouble         //正股距收回价,的过滤下限(闭区间),仅牛熊证支持此字段过滤。该字段为百分比字段,默认不展示 %,如 20 实际对应 20%。不传代表下限为 -∞(精确到小数点后 3 位,超出部分会被舍弃)
	PriceRecoveryRatioMax *OptionalDouble         //正股距收回价,的过滤上限(闭区间),仅牛熊证支持此字段过滤。该字段为百分比字段,默认不展示 %,如 20 实际对应 20%。不传代表上限为 +∞(精确到小数点后 3 位,超出部分会被舍弃)
}

func (*WarrantFilter) Filter

func (filter *WarrantFilter) Filter(req *qotgetwarrant.C2S)

Directories

Path Synopsis
protocol 为消息添加header信息,从tcp连接中解析数据,转换protobuf数据和[]byte格式
protocol 为消息添加header信息,从tcp连接中解析数据,转换protobuf数据和[]byte格式
Package tcp implements the framework of TCP connection.
Package tcp implements the framework of TCP connection.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL