一个EA源码的详细注释
[code]第126 行 下面我还有点不明白, 请在帮忙指点指点..
if (UseStopLoss) StopLossLevel = Ask - StopLoss * Point; else StopLossLevel = 0.0;
//如果 使用止损 StopLossLevel = 买入价-止损点数* Point
if (UseTakeProfit) TakeProfitLevel = Ask + TakeProfit * Point; else TakeProfitLevel = 0.0;
//如果使用止赢 TakeProfitLevel=买入价+止赢点数* Point
// 上面两句我看了看,是不是这个意思.. 我想问??? 为什么是 StopLoss * Point或者 TakeProfit * Point 直接 用 StopLoss或者 TakeProfit 不行吗? ?
Ticket = OrderSend(Symbol(), OP_BUY, Lots, Ask, Slippage, StopLossLevel, TakeProfitLevel, "Buy(#" + MagicNumber + ")", MagicNumber, 0, DodgerBlue);
// OrderSend(Symbol() 这个是进行开仓的动作吧? 那 Ticket = OrderSend(Symbol() 是起到什么作用呢? 是不是把这个开仓动作传到
Ticket上面来呀... 如果是...? 假我有几个..
Ticket1 = OrderSend(Symbol()...
Ticket2 = OrderSend(Symbol()...
这样的话,是不是可以做几次开仓动作了呢?(Symbol(), OP_BUY, Lots, Ask, Slippage, StopLossLevel, TakeProfitLevel, "Buy(#" + MagicNumber + ")", MagicNumber, 0, DodgerBlue)
Symbol() 是当前,OP_BUY 是买开, Lots 下单手数, Slippage允许的滑动点数,StopLossLevel 止损点数
,TakeProfitLevel 止赢点数 ,"Buy(#" + MagicNumber + ")" 这里起什么作用呀??什么意思 ,还有后面三个?是什么意思,起什么作用...
MagicNumber, 0, DodgerBlue
if(Ticket > 0) // 如果Ticket > 0 是真的,就运行下面, Ticket就是上面,开仓的动作是吧??是不是用来分析 开仓成不成功了?
{
if (OrderSelect(Ticket, SELECT_BY_TICKET, MODE_TRADES))
//OrderSelect函数的作用是锁定一个订单,然后才能查询这个订单的具体内容 ,那(Ticket, SELECT_BY_TICKET, MODE_TRADES)是什么?
{
Print("BUY order opened : ", OrderOpenPrice()); // Print 是输出的意思吧??? 这里起什么作用呀??
if (SignalMail) SendMail("[Signal Alert]", "[" + Symbol() + "] " + DoubleToStr(Ask, Digits) + " Open Buy");
//是否发出报警邮件 ,是这样呀,那,如果,使用 发送邮件呢,,怎么处理......?????[/code] MT4编程我懂一些,后面乘以point是点数,外汇点数一般是小数点后五位,相当于minmove
页:
[1]