以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://www.weistock.com/bbs/index.asp) -- 高级功能研发区 (http://www.weistock.com/bbs/list.asp?boardid=5) ---- vba (http://www.weistock.com/bbs/dispbbs.asp?boardid=5&id=53732) |
-- 作者:fjasmin -- 发布时间:2013/7/8 15:33:02 -- vba dim ss ss = 1 \'\'\'\'\'\'\'\'\'\'多头止损系数 dim n1 n1 = 10 \'\'\'\'\'\'\'\'\'\'空头止损系数 dim n2 n2 = 10 \'\'\'\'\'\'\'\'\' dim n3 n3 = 4 dim LastHigh dim LastLow dim LastClose dim Icode dim Imarket sub application_vbastart() call MarketData.RegReportNotify("if03","zj") end sub sub MarketData_ReportNotify(ReportData) set ReportData = MarketData.GetReportData("if03","zj") NewPrice = ReportData.NewPrice LastHigh = ReportData.LastHigh \'call application.MsgOut(LastHigh&" "&NewPrice) \'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'持仓信息 dim BuyHoding dim SellHoding dim BuyCost \'dim SellHoding call order.HoldingInfoByCode2("if03","zj", BuyHoding, BuyCost, BuyTodayHoding, SellHoding, SellCost, SellTodayHoding, PNL, UseMargin,Account) \'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'品种信息 dim MinTick call order.Contract("if03","zj", Multipliter, MinTick, ShortPercent, LongPercent) \'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'多头 \'BuyHoding=0 and SellHolding=0 and if Hour(Time) >09 and Hour(Time) <14 and NewPrice>LastHigh and BuyHolding = 0 then call application.MsgOut("多头开!") call order.buy(1,ss,0,0,"if03","zj","",0) end if \'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'空头 \'BuyHoding=0 and SellHolding=0 and if Hour(Time) >09 and Hour(Time) <14 and NewPrice<LastHigh and SellHolding = 0 then call application.MsgOut("空头开!") call order.buyshort(1,ss,0,0,"if03","zj","",0) end if \'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'多止损 if BuyHoding>0 and NewPrice<BuyCost-n1*MinTick and Hour(Time) >09 and Hour(Time) <14 then call application.MsgOut("多头止损!") call order.Sell(1,BuyHolding,0,0,"if03","zj","",0) end if \'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'空止损 if SellHoding>0 and NewPrice>BuyCost+n2*MinTick and Hour(Time) >09 and Hour(Time) <14 then call application.MsgOut("空头开!") call order.SellShort(1,SellHolding,0,0,"if03","zj","",0) end if \'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'日内平仓 if Hour(Time) >= 14 and Hour(Time) <=15 then call application.MsgOut("收盘全平!") call order.Sell(1,BuyHolding,0,0,Icode,Imarket,"",1) call order.SellShort(1,SellHolding,0,0,"if03","zj","",1) end if End Sub Sub UserForm1_CommandButton1_Click() call application.MsgOut(LastHigh&" "&NewPrice) End Sub 提示符号错误,郁闷 |
-- 作者:王锋 -- 发布时间:2013/7/8 15:37:22 -- 希望用户能以解决问题的态度来面对这个问题。 你的代码我们初步运行没发现什么问题,建议你把你完整的VBA工程打包上传过来,并详细告知出现你所描述的问题时的操作步骤 |