以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  高级功能研发区  (http://weistock.com/bbs/list.asp?boardid=5)
----  VBA基础  (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=96334)

--  作者:黄金精算师
--  发布时间:2016/4/15 13:43:01
--  VBA基础
请问一下VBA怎么写

现价=IF05最新价
BID1=IF05当时的买1行情价格     ‘读取到IF05合约的买1行情价到 BID1      取买1价
ASK1=IF05当时的卖1行情价格     ‘读取到IF05合约的卖1行情价到 ASK1       取卖1价

--  作者:yukizzc
--  发布时间:2016/4/15 14:31:45
--  

GetReportData 方法

看下这个方法


--  作者:黄金精算师
--  发布时间:2016/4/15 15:11:32
--  
好新的新手,不会用这指令,老编译不过
代码是这样写的
 LastOpen      \'   昨开价
    LastHigh     \'     昨高价
    LastLow       \'    昨低价
    Open         \'      取开盘价
    High          \'      取最高价
    Low          \'       取最低价
    NewPrice     \'     取最新价
    Volume       \'      取成交量(手)
    Amount       \'     取成交额(元)
    BuyPrice1    \'     取买1价格
    BuyVolume1  \'    取买1量
    SellPrice1   \'      取卖1价
    SellVolume1  \'    取卖1量
Sub TestReportData()
    set report1=marketdata.getreportdata("IF05","ZJ")
    application.msgout Cdate(time) & ",IF05最新价:" &report1.NewPrice & ",买1价:"&report1.buyprice1&",卖1价:"&report1.sellprice1
End
\'    BID=买1价
\'    ASK=卖1价

--  作者:黄金精算师
--  发布时间:2016/4/15 15:33:40
--  
编译过了,但不会把他调到BID与ASK里,帮改一下可以吗
Sub TestReportData()
    set report1=marketdata.getreportdata("IF05","ZJ")
    application.msgout Cdate(time) & ",IF05最新价:" &report1.NewPrice & ",买1价:"&report1.buyprice1&",卖1价:"&report1.sellprice1
End Sub
    BID=买1价      这个调不了
    ASK=卖1价

--  作者:黄金精算师
--  发布时间:2016/4/18 14:20:10
--  
这行
set report1=marketdata.getreportdata("IF05","ZJ")

因为有很多一样的,想统一修改,想定居民下面这样,下面的不行,怎么可以做到?
品种=IF05
市场=ZJ
set report1=marketdata.getreportdata("品种","市场")

--  作者:yukizzc
--  发布时间:2016/4/18 14:44:19
--  
品种="IF05"
市场="ZJ"
set report1=marketdata.getreportdata(品种,市场)

--  作者:黄金精算师
--  发布时间:2016/4/19 9:04:37
--  
谢谢,可以了
我做了一个这样的运算,得出的结果有很多位小数点,这个会影响程序速度吗,要影响我只取小数点后4位怎么取
bk_TextBox20.text=  (bk_TextBox5 - bk_TextBox13) / bk_TextBox13


--  作者:黄金精算师
--  发布时间:2016/4/19 9:53:19
--  
这个很特别,昨天一直运行都是对的,现在盘中不对了
bk_TextBox12.text=  (bk_TextBox2 - bk_TextBox14) / bk_TextBox14    \'  这个结显示: -5.5657



bk_TextBox2 - bk_TextBox14约等于180     bk_TextBox14约等3200    盘中IF09行情

昨天显示结果为
-.55657

为什么会出现小数点移位这么多
bk_TextBox12.text= -180/3200              这样是对的      结果-.556
bk_TextBox12.text= -180/bk_TextBox14 这样就不对了   结果-5.56


--  作者:yukizzc
--  发布时间:2016/4/19 10:30:47
--  

http://www.weistock.com/bbs/dispbbs.asp?BoardID=5&ID=54353&skin=0

转换下文本框格式


--  作者:黄金精算师
--  发布时间:2016/4/19 14:00:23
--  
是这样子用吗,这个结果也是不行的

    price1 = CDbl(bk_TextBox2.text)
    price2 = CDbl(bk_TextBox14.text)
    bk_TextBox12.text= (price1-price2)/price2