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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件高级功能研发区 → 金字塔VBA常用对象使用范例

   

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


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

主题:金字塔VBA常用对象使用范例

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


加好友 发短信
等级:论坛游侠 帖子:252 积分:1001 威望:0 精华:0 注册:2010/2/15 16:47:58
  发帖心情 Post By:2013/7/9 14:16:52 [只看该作者]

dim BuyHoding
dim BuyTodayHoding
dim SellHoding
dim SellTodayHoding
dim BuyCost
dim SellCost
dim PNL
Dim UseMargin

'取指定持仓品种信息
Result = Order.HoldingInfoByCode2("AUDJPY","WH",BuyHoding,BuyCost,BuyTodayHoding,SellHoding,SellCost,SellTodayHoding,PNL,UseMargin,"U78654")
If Result <> 1 Then
Exit Sub
End If

'显示持仓量
MsgBox BuyHoding

 

楼主这么高的水平也中金字塔的招了,我看帮助文件,金字塔的是hoding,不是holding,我实盘出问题,查到的。


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


加好友 发短信
等级:论坛游侠 帖子:252 积分:1001 威望:0 精华:0 注册:2010/2/15 16:47:58
5日均线  发帖心情 Post By:2013/7/9 14:47:38 [只看该作者]

金字塔的是hoding,不是holding,这么写也可以,问题不是出在这里。
[此贴子已经被作者于2013/7/9 14:48:09编辑过]

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


加好友 发短信
等级:蜘蛛侠 帖子:1366 积分:5210 威望:0 精华:7 注册:2010/12/11 18:00:33
  发帖心情 Post By:2013/7/9 16:30:38 [只看该作者]

哈哈,我也中过招,不过我已经改过了,这个帮助文件中的变量名错了倒是没关系,关键是 BuyHoding,BuyCost,BuyTodayHoding,SellHoding,SellCost,SellTodayHoding参数中间的BuyHoding,BuyTodayHoding,SellHoding,SellTodayHoding这4个千万要修改过来,不然就取不到持仓量了。这才是正确的Holding。



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


加好友 发短信
等级:新手上路 帖子:15 积分:2 威望:0 精华:0 注册:2013/5/1 13:19:56
  发帖心情 Post By:2014/1/22 18:49:03 [只看该作者]

金字塔后台还是有些不尽如意,开始学习使用vba,谢谢楼主的帖子

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


加好友 发短信
等级:新手上路 帖子:15 积分:2 威望:0 精华:0 注册:2013/5/1 13:19:56
  发帖心情 Post By:2014/1/23 17:17:34 [只看该作者]

请教一个问题:

采用MarketData对象的ReportNotify事件时,如果注册了多个品种,在MarketData_ReportNotify(ReportData)代码里,ReportData对象怎么能区分各个品种,我看了ReportData对象的属性,只有品种代码Label,没有品种个数。


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


加好友 发短信
等级:论坛游民 帖子:138 积分:494 威望:0 精华:0 注册:2011/9/28 8:36:47
  发帖心情 Post By:2014/2/6 15:37:18 [只看该作者]

 精品

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


加好友 发短信
等级:论坛游民 帖子:198 积分:745 威望:0 精华:0 注册:2013/1/15 22:12:44
  发帖心情 Post By:2014/2/13 14:02:00 [只看该作者]

此贴深入浅出,非常感谢楼主的奉献。

希望楼主对formula这个对象做范例介绍。


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


加好友 发短信
等级:蜘蛛侠 帖子:1366 积分:5210 威望:0 精华:7 注册:2010/12/11 18:00:33
  发帖心情 Post By:2014/2/14 8:22:08 [只看该作者]

Formula对象编程我还真做过,下面说说我那个例子:
我用一个公式,有6条均线,每一条均线的参数不一样,通过vba代码来动态修改参数,然后读取均线输出值,根据这些数值进行交易。
代码如下:
                       if Application.IsActivateFrame("Technic")=0 then
Application.ActivateFrame("Technic")
end if
Set Grid = Technic.GetGridByName("Main")
Call Grid.ChangeStock("IF00","ZJ")
Call Grid.ChangeCyc(1,1) '周期
Result=""
Call Technic.GetFormulaByName("均线公式", Result)
if Result=0 then '插入公式
CAll Grid.InsertFormula("均线公式")
end if
Set GongShi=Grid.GetFormulaByName("均线公式")
                        N1=5
                        N2=10
                        N3=20
                        N4=30
                        N5=60
                        N6=120  
JxList=Cstr(N1)&","&Cstr(N2)&","&Cstr(N3)&","&Cstr(N4)&","&Cstr(N5)&","&Cstr(N6)
'application.MsgOut "JxList:"&JxList
GongShi.SetParameter(JxList) '将技术分析图表的MA均线公式的参数改掉
Grid.ReInitDataFormula
Ma1=GongShi.GetBufData("Ma1",GongShi.DataSize-1) '取Ma1
Ma2=GongShi.GetBufData("Ma2",GongShi.DataSize-1) '取Ma2
Ma3=GongShi.GetBufData("Ma3",GongShi.DataSize-1) '取Ma3
Ma4=GongShi.GetBufData("Ma4",GongShi.DataSize-1) '取Ma4
Ma5=GongShi.GetBufData("Ma5",GongShi.DataSize-1) '取Ma5
Ma6=GongShi.GetBufData("Ma6",GongShi.DataSize-1) '取Ma6
Price=GongShi.GetBufData("Price",GongShi.DataSize-1) '取最新价

下面是均线公式的内容,自己建立一个公式,复制进去就行:
input:n1(5,1,99),n2(10,1,99),n3(20,1,99),n4(30,1,99),n5(60,1,99),n6(120,1,999),n7(234,1,999),n8(300,1,999);

//中间变量
MID:=(O+H+L)/3;
MA1:rounds(SMA(MID,n1,1),1),linethick1;
MA2:rounds(SMA(MID,n2,1),1),linethick1;
MA3:rounds(SMA(MID,n3,1),1),linethick1;
MA4:rounds(SMA(MID,n4,1),1),linethick2;
MA5:rounds(SMA(MID,n5,1),1),linethick2;
MA6:rounds(SMA(MID,n6,1),1),linethick2;
MA7:rounds(SMA(MID,n7,1),1),linethick1;
MA8:rounds(SMA(MID,n8,1),1),linethick1;


手数:=1;
//交易条件
Dk:=1;//every(Ma6>ref(Ma6,1),3),NODRAW;
MaUpCross:=Ma1>Ma2 and Ma2>Ma3 and Ma3>Ma5;
PingDuo:=CROSS(Ma2,Ma1);
MaDnCross:=Ma1<Ma2 and Ma2<Ma3 and Ma3<Ma5;
PingKong:=CROSS(Ma1,Ma2);

平空条件:=PingKong,nodraw;
平多条件:=PingDuo,nodraw;
开多条件:=MaUpCross,nodraw;
开空条件:=MaDnCross,nodraw;

//下单模块 
平空:SELLSHORT(平空条件 AND HOLDING<0,HOLDING,MARKET);
平多:SELL(平多条件 AND HOLDING>0,HOLDING,MARKET);
开多:BUY(开多条件  AND HOLDING=0,手数,MARKET);

开空:BUYSHORT(开空条件  AND HOLDING=0,手数,MARKET);

持仓:HOLDING,LINETHICK0;
Bars:if(type(1)=1 or type(1)=3,enterbars,exitbars),nodraw;





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


加好友 发短信
等级:蜘蛛侠 帖子:1366 积分:5210 威望:0 精华:7 注册:2010/12/11 18:00:33
  发帖心情 Post By:2014/2/14 8:39:06 [只看该作者]

我更新了论坛头像了,用微信二维码做图像,很好玩,想了解我的朋友,扫我图像就能加我了。加我时请注明:来自金字塔

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


加好友 发短信
等级:论坛游民 帖子:198 积分:745 威望:0 精华:0 注册:2013/1/15 22:12:44
  发帖心情 Post By:2014/2/26 15:15:44 [只看该作者]

期待版主继续。。。


 回到顶部
总数 108 1.. 上一页 2 3 4 5 6 7 8 9 10 11 下一页