Rss & SiteMap

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

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

标题:vb如何批量获取k线数据

1楼
netwalker 发表于:2021/4/16 10:47:54

Close = History.Close(History.Count-1) 这种方法只能每次获取一个k线的值,如果我需要一次性获取所有k线的close的数据,然后输入到python处理,应该怎么写代码呢? 谢谢

我试了Close= History.Close,但会报错。



[此贴子已经被作者于2021/4/16 10:49:35编辑过]
2楼
netwalker 发表于:2021/4/16 10:51:08
我是通过一个循环,每次传一个k线的数据到python,但k线多了,明显会卡。
3楼
yukizzc 发表于:2021/4/16 11:26:39

Count

可选参数,若填数字则表示指定的调用数量,为0或者不填表示读取该品种在本地硬盘保存的全部数据

GetHistoryData (Code, MarketCycType,[Count,Parameter])

这里不是有参数count是选择数量吗,你数字自己选的
4楼
netwalker 发表于:2021/4/16 15:04:43
我现在碰到的问题是:要把k线图每个bar对应的日期传到python,比如有1000个k线的数据,现在我通过把日期转成字符串,调用1000次callObject的方法逐个日期传进去,有没有办法像传array对象那样,一次性把1000个日期数据全部传进去?试了一下 然后分别通过ArrayString或者数组,都传不进去。

[此贴子已经被作者于2021/4/16 15:05:43编辑过]
5楼
yukizzc 发表于:2021/4/16 15:08:01
CallObject方法
这个方法里不是传入一个array对象吗

Sub Test()

      Dim d1 '创建一个变量

     

      '创建Array外部对象,将对象实例置变量d1

      Set d1 = CreateObject("Stock.Array")

      d1.AddBack(1)

      d1.AddBack(2)

     

      '创建外部对象,启用Python引擎

      Set d = CreateObject("Stock.Python")

      '载入Python模块,模块名为MyPython

      ret = d.ImportModule("MyPython ")

      If ret <> 1 Then

              '载入失败,打印错误原因

              Msg = d.GetErrorInfo()

              Application.MsgOut Msg

              Set Msg = Nothing  '使用完毕需要 Set Nothing销毁以免出现内存泄漏

              Exit Sub

      End I

    

      '调用Python模块函数,函数名pytestmodule,参数为Array外部对象d1

       Data = d.CallObject("pytestmodule",d1)

6楼
netwalker 发表于:2021/4/16 15:19:18
Array对象支持动态的浮点型数据数组,日期和字符串不行,ArrayString传不过去。
7楼
yukizzc 发表于:2021/4/16 15:20:13
要么是实在不行全部转成数值类型的arry然后交互
你这些个需求目前可能没办法了,本身就是两种语言的,很多地方要去完全交互要考虑的太多了
[此贴子已经被作者于2021/4/16 15:21:18编辑过]
8楼
netwalker 发表于:2021/4/16 16:25:32
自己写了个函数,转进去了~
共8 条记录, 每页显示 10 条, 页签: [1]


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