欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件高级功能研发区 → [求助]超级问题集,望尽快回答

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有8346人关注过本帖树形打印复制链接

主题:[求助]超级问题集,望尽快回答

帅哥哟,离线,有人找我吗?
micro_mok
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:50 积分:295 威望:0 精华:0 注册:2011/7/28 11:36:50
[求助]超级问题集,望尽快回答  发帖心情 Post By:2011/8/17 12:19:34 [显示全部帖子]

以下所有问题都基本是针对帮助文件而问的(除了dictionary、collection和windows. 引用系统基本函数外)——本人非计算机学习专业人士,所以会出现一些低级问题,还请多多包涵。

 

Application对象

 

SetTimer  1、准确度如何,一小时内的误差秒数是多少?函数使用方法是什么?(Id,time,method)格式么?如果计时器发生时间间隔少于其他语句的运算时间,计时器中的指令是否会被激活,是否会被当前其他运算运算阻塞?如果多个计时器,是否会实现多线程?(考虑系统默认状态)

 

KillTimer  函数使用方法是什么?(帮助文档那里的介绍也太简单了吧,这些东西弄个实例会死么)

 

Guotx2010答: 

'SetTimer和KillTimer实例:

Sub Application_VBAStart()     'VBA启动时会自动执行执行

    CreateTimer     '调用计时器创建过程

End Sub

 

Sub CreateTimer()    '创建2个计时器

    Call Application.SetTimer(5,2*1000)      '5是这个计时器的标识,如果需要多个计时器,可以增加语句,用不同的编号就行,1000微妙=1秒,2*1000,就是2秒,每两秒执行一次

    Call Application.SetTimer(6,30*1000)    '6号计时器30秒执行一次

End Sub

 

Sub Application_timer(ID)       '看到了这个ID吗?就是SetTimer函数中指定的那个参数

    Application.msgOut "计时器事件重复发生,在这里写代码"

    If ID=5 then

          Application.msgOut "5号计时器该执行的代码写到这里"

    End

    If ID=6 then

          Application.msgOut "6号计时器该执行的代码写到这里"

    End

End Sub

 

Sub EndTimer()   '停止计时器
    Application.KillTimer(5)

    Application.KillTimer(6)
End Sub

 

HistoryData对象

 

当选择了数据类型(tick,时分,5分钟),决定一条historydata的数据个数量的因素是什(假设该下载的都下载了)”?(Grid和Marketdata对此的引用,会导致显示数量不一样么;一般使用这些软件可以通过放大缩小而增加观察的数据个数的量)(如果是分笔数据的量,是否只是限制于1天)

 

Grid对象(实例讲解在12楼,guotx2010回答)

 

框架名称是否就只有“technic”,并且要激活才能执行其他指令?

示例中Grid的名称“main”是否指定,能否改写(如果有几个Grid)(或者如何用程序激活想要的Grid)

 

MarketData对象

 

这里说的MarketData与Market对象有什么关系,MarketData一些属性方法是对Market对象的?(这里很混乱)(MarketData是行情信息,如:某品种的最新价等,而Market是市场信息,比如:上海期货交易所的相关信息)

 

Addstock 这个和block中的addstock有什么区别?添加到系统中,能实现遍历?遍历取的集合究竟是MarketData还是Market对象,还是其他?(考虑系统最佳效用,能否设置只接收addstock了的品种数据)

 

Stkindi 使用的详细方法(这些也是一个实例都没有,里面要设什么参数都没有提示,你们真的要好好修改一下帮助文件了)

 

Stockalarm 能否给设置?如何设置(只要在某条件语句直接放入 stockalarm即可么?)

 

alarmstart 也是如何设置的问题,同上

 

Block对象(实例讲解在13楼,guotx2010回答)

 

Addstock 同样,addstock后是否可以遍历,遍历的对象集合是什么?(可以遍历,遍历的对象集合股票或期货品种)

 

Tosave  不知道创建后如何制定save的name(类似saveas的功能)  (自己指定一个就行了,如:block.tosave "自选", "自选股"

 

Createtype 与 Createblock有什么区别?可以对不同type另外进行遍历?遍历的集合对象是什么?(CreateType是建立行业,CreateBlock是行业中的版块)

 

block对象是否可以与HistoryData或minuteData,reportdata配合使用?(可以结合使用,例子中就有)

 

Array对象

 

这个array对象和一般的array是否有区别?(都是建立数组的,没有区别)

 

是否只能放入数据,而不能放入对象;相应是否还能在编程中使用dictionary和collection?

 

Market对象

 

Tradeseconds和openseconds的区别(如何使用),其中示例中openseconds(time),time是固定输入还是随意输入,作用是什么

 

Timesecstart 的使用方法(这个也是帮助文档多余简单)

 

Minutedata对象

 

Date 返回的时间,是否精确到秒的时间?(并不是返回时间,而是分时成交记录,每一笔的成交记录)

 

Reportdata对象

 

在模拟仿真中(历史回测),reportdata对象可照常“虚拟”实现么,特别对象自带统计的实现情况

 

date 是返回最新接收到的数据的精确时间么(hh-mm-ss)

 

vqt 是否就是在模拟仿真中代替现实委买卖量的?

 

poweru和powerd是以什么为标准的(其参照系是什么)

 

 

 

 

望能尽快解答(这个星期内吧,至少)


 回到顶部
帅哥哟,离线,有人找我吗?
micro_mok
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:50 积分:295 威望:0 精华:0 注册:2011/7/28 11:36:50
  发帖心情 Post By:2011/8/17 16:12:28 [显示全部帖子]

这里timer原来是切割了,要另外编一个timer的发生指令(用惯了其他都是一连串的)

 

但不知道timer会不会发生阻塞,阻塞是会不会启动多线程(默认启动那就有启动的编写思路)

 

网上看有些人说vb语言的timer,会在到点激活时,如果有其他同程序的指令在运算,那timer会有可能不出现,不知道会不会这样


 回到顶部
帅哥哟,离线,有人找我吗?
micro_mok
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:50 积分:295 威望:0 精华:0 注册:2011/7/28 11:36:50
  发帖心情 Post By:2011/8/17 16:30:40 [显示全部帖子]

以下是引用fly在2011-8-17 16:10:34的发言:

2.HistoryData对象

决定一条historydata的数据个数量的因素是什么---图表上显示的数据数量.

分笔数据的量,是否只是限制于1天.---也是由图表上显示的分笔数据数量决定的.

你这个是说在Grid引用historydata等数据吧

 

但如果我是用marketdata引用historydata呢?marketdata是属于后台运算吧,Grid是前台可视化的吧。

 

如果marketdata也是图表显示,那怎么控制图表显示的量?


 回到顶部
帅哥哟,离线,有人找我吗?
micro_mok
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:50 积分:295 威望:0 精华:0 注册:2011/7/28 11:36:50
  发帖心情 Post By:2011/8/17 17:22:16 [显示全部帖子]

这个解释清晰多了,原来那个解释让人感觉两个都是一样的,谢谢

 回到顶部
帅哥哟,离线,有人找我吗?
micro_mok
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:50 积分:295 威望:0 精华:0 注册:2011/7/28 11:36:50
  发帖心情 Post By:2011/8/17 17:24:07 [显示全部帖子]

minutedata这些对象,感觉是一个由众多array或是dictionary的集合,不知道我这个理解是否正确。

 回到顶部
帅哥哟,离线,有人找我吗?
micro_mok
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:50 积分:295 威望:0 精华:0 注册:2011/7/28 11:36:50
  发帖心情 Post By:2011/8/17 17:25:58 [显示全部帖子]

这个貌似比较复杂,了解这个主要是为了程序化后台运算会出现一些意想不到的情况,所以日后还是要尽可能把自己的策略可视化,加多一个保险环节。

 回到顶部
帅哥哟,离线,有人找我吗?
micro_mok
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:50 积分:295 威望:0 精华:0 注册:2011/7/28 11:36:50
  发帖心情 Post By:2011/8/19 10:12:54 [显示全部帖子]

有些帮助文档没有写清楚,这也没有办法;另外表达清楚也是金字塔自身的工作;除非金字塔自己把里面所编写的不同的类的原文件放出来,那我当然就不需要任何解答了(如果金字塔不怕他自己的商业利益受损的话);何况vbs的调试是非常蛋疼的,编写导航缺乏也是一个问题(这不像在eclipse中java,那导航让一般人自学也能解决)

 

block的遍历,我当然知道按array里面一个一个调出来for ... to ... next 的形式可以调出来,但vb的语言汇编出错的几率大(我用vba处理过几十万个数据,就发现很多vb语言对解释上的错误,差点就把我气得把数据都改成csv,用java或是matlab去另外处理);所以如果有for... in ... next形式的遍历,那是肯定优先考虑的(既然block和marketdata都有addstock,那理论上应该存在直接对集合的遍历)

 

另外里面的settimer,我不知道是否是用window.setinterval来实现的,如果是用setinterval来实现,我自然不会有多线程和堵塞的问题去问(因为setinterval本来就是不支持多线程和会堵塞的)

 

 

我不是学计算机的,有些地方你们在帮助文档里面没有弄清楚,我当然无法了解(主要问题是vbs调试不容易,和你们新编的类是没有导航的;这点是金字塔需要改正的,因为你们的软件主要面对的不是读计算机的人)

[此贴子已经被作者于2011-8-19 10:31:47编辑过]

 回到顶部