Rss & SiteMap

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

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

标题:帮修改下事件触发

1楼
黄金精算师 发表于:2016/4/26 21:15:45
你好,我原来用的按键事件触发换成钩选的事件解发,无法触发,帮修正下可以吗
-------------------------按键的代码,这是正常的----------------
Sub bk_CommandButton4_Click()
if bk_CommandButton4.Caption="运行中" then
iRun=0 '暂停
bk_CommandButton4.Caption="暂停中"
bk_CommandButton4.backcolor=rgb(255,0,0)
else
iRun=1 '运行
bk_CommandButton4.Caption="运行中"
bk_CommandButton4.backcolor=rgb(0,255,0)
end if
End Sub

----------------------------换成钩选的代码,不能正常------------
Sub bk_CheckBox1_Activate() '这个钩选的属性名字为CheckBox1
if bk_CheckBox1.Caption="运行中" then
' if bk_CommandButton4.Caption="运行中" then
iRun=0 '暂停
bk_CheckBox1.Caption="暂停中"
else
iRun=1 '运行
bk_CheckBox1.Caption="运行中"
end if
End Sub


2楼
黄金精算师 发表于:2016/4/26 21:41:34
这样写也不行,应该事件没有触发   iRun=置1,只要  iRun=置1程序就会运行

两个都写iRun=1                   iRun=1是开的标志
Sub bk_CheckBox1_Activate() '
if bk_CheckBox1.Checked = True then
'       CheckBox1.Checked = True 表示选中
iRun=1 '暂停
else
iRun=1 '运行
        ' bk_CheckBox1.Checked = False表示关
end if
End Sub
那个窗体小方块打钩了
3楼
黄金精算师 发表于:2016/4/26 21:47:56
图片
图片点击可在新窗口打开查看此主题相关图片如下:qq图片20160426214746.jpg
图片点击可在新窗口打开查看

4楼
yukizzc 发表于:2016/4/27 9:24:31
CheckBox1_Click()
5楼
黄金精算师 发表于:2016/4/27 10:42:35
成了,谢谢,谢谢
6楼
黄金精算师 发表于:2016/4/28 11:17:29
这一句的意思可以帮解释一下吗,Set Formula = marketdata.STKINDI(sCode,sMarket,sPolicyName,0,iPeriod)   '取策略
我的VBA在运行后,图表策略就好像失控了,完全不受图表的控制而受VBA单独控制
olicyName="图表策略"
iPeriod=0
Set Formula = marketdata.STKINDI(sCode,sMarket,sPolicyName,0,iPeriod)   '取策略
'0 1分钟 1 5分钟 2 15分钟 3 30分钟 4 60分钟 5日线 6周线 7月线 8年线 9多日线 10分笔成交
'11多小时线 12多秒线 13多分钟线 14季度线 15半年线 16节气线 17 3分钟 18 10分钟 19 多笔线
iFlag=Formula.GetBufData("Flag",Formula.DataSize-1)
nFlagPrice=Formula.GetBufData("FlagPrice",Formula.DataSize-1)
iBars=Formula.GetBufData("Bars",Formula.DataSize-1)
' iFlag=1        '图表策略持仓         如果在这VBA里强行写开平是可以改变结果                 
          这个图表持仓完全在运行后无法控制VBA,所执行的就是VBA策略运行的图表策略1分钟策略(0)
          如果要图表策略中强行写一个空仓,怎么写可以改变呀(或VBA单独去读一个变量也行,告知一下这个变量怎么在VBA里读)
7楼
yukizzc 发表于:2016/4/28 11:27:52

这个取得就是图表策略里的返回值,不了解您的具体需求

你这个取值全是图表策略这个计算结果,本来就不是你vba自己去控制,你如果要自己控制就自己写变量咯

比如

fll = 1  这样吗

8楼
黄金精算师 发表于:2016/4/28 11:43:40
1、取得策略的返回值,但是我的策略在别的图表行情下运行,完全与当前的那个不同,但是他还是只执行最初那个IF05,就是VBA里写的这个,按理不是只开平这个合约按图表开平指示吗
     如原策略为IF05   1 分钟,当前策略为做多;
          我硬把策略运行于一个商品是做空的,按理策略结果要变,可是VBA还是只执行IF05的那个,不再管后面图表开不开,就算关了,一样的运行IF05

2、读取图表
    如果我的图表里写有    KKK:=1       //一会让VBA取
                              这VBA取这值怎么写
9楼
yukizzc 发表于:2016/4/28 13:10:14

sCode根据你这边传参的品种代码来决定的,这个其实就和你pel里面的stkindi一样跨品种跨周期调用

你策略里有输出kkk这个变量值就可以了,Formula.GetBufData("KKK",Formula.DataSize-1)

10楼
黄金精算师 发表于:2016/4/28 15:53:41
谢谢,可以读到了

图表的这个数据一开电脑就有了,有什么办法检查图表策略有没有运行的指令,我用写入数据的方式去识别他

VBA写入数据怎么写
如把0写入到KKK中
共20 条记录, 每页显示 10 条, 页签: [1] [2]


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