Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共8 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:如何获得A股的所有股票代码

1楼
dddf 发表于:2015/9/25 18:41:18
请教一下如何在VBA下获得A股市场所有的股票代码(排除300ETF基金之类),同时确定其中的哪些股票是停牌无法交易的。
哪位老师指导 一下。谢谢。
2楼
dddf 发表于:2015/9/26 0:33:31
另一个问题是上海A股,用SH表示,深圳用SZ。那么深圳创业,也是用SZ表示的么?
3楼
王锋 发表于:2015/9/27 15:54:54
示例

‘该示例从郑州市场筛选SR合约得最大持仓量做为主力合约

Sub Test()

Dim MaxCode
Dim MaxVolume

'得到市场所有品种
Count = MarketData.GetReportCount("ZQ")

For i = 0 To Count-1
Set Report1 = MarketData.GetReportDataByIndex("ZQ",i)
'只处理SR合约
if Left(Report1.Label,2) = "SR" Then
'只处理有效合约
if Right(Report1.Label,2) >= "01" And Right(Report1.Label,2) <= "12" Then
If Report1.Volume > MaxVolume Then
MaxCode = Report1.Label
MaxVolume = Report1.Volume
End if
end if
End if
Next

'显示成交量最大得合约
MsgBox MaxCode

End Sub

 

===============

 

所有的SZ市场的品种市场代码都是SZ的,如果你要区分创业板,你可以直接通过股票代码来却分。如果你不知道怎么区分,你可以看一下 工具菜单-》市场与板块-》打开深圳市场,里面金字塔已经帮你区分好了

[此贴子已经被作者于2015/9/27 15:56:23编辑过]
4楼
dddf 发表于:2015/9/28 10:57:26
谢谢王老师。
再请教一下
确定其中的哪些股票是停牌无法交易的。使用ISNULL(DYNAINFO()))?
5楼
dddf 发表于:2015/9/28 11:03:46
 if isnull(Report1.dynainfo(17)) then msgbox  "null" else msgbox  "Y"
我用这个测出来好象都是NULL,不管有没有交易
6楼
dddf 发表于:2015/9/28 11:06:42
set Report1 = marketdata.GetReportData("601579","SH")
 'set Report1 = marketdata.GetReportData("002242","SZ")
 if isnull(Report1.dynainfo(18)) then msgbox  "null" else msgbox  "Y"
都是NULL,好象有没有停牌都没有区别
7楼
王锋 发表于:2015/9/28 11:14:10
有没有停牌的这个不好精确判断,你只能通过开盘后是否是成交量为0来做初步判断
8楼
chenyan9988q 发表于:2015/10/8 18:12:45
金字塔能交易股票吗?
共8 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.01563 s, 2 queries.