[存档]任何菜鸟问题,为了不使论坛变得杂乱无章。专业人士,不要路过。没有你就无处可去 - 3. - 页 407 1...400401402403404405406407408409410411412413414...652 新评论 Роман 2011.12.06 13:00 #4061 costy_: 底部的鱼鳍...:-) 也是一个基本的趋势)) 如果欧元下跌,多头下跌,则持平 :-) [删除] 2011.12.06 13:15 #4062 costy_: 掉期价差是否已被纳入考虑范围? 是的,这就对了。这是因为价差的关系。没有掉期,头寸是短的。因此,专家顾问应该更有弹性,使利润胜过损失。谢谢你,我会试试的。 [删除] 2011.12.06 16:23 #4063 costy_: 关于事实,在为... Yeah...."详尽的 "答案。每个事件都必须有一个原因。专业人士,遇到一些故障时知道该注意什么。通过算法看了好几次,但我找不到原因 这就是为什么我向专业人士寻求建议--可能是什么原因? [删除] 2011.12.06 16:41 #4064 我正试图开一个这样的挂单。 //+---------Функция расчета лота---------------------------------------+ double GetLot(int Risk) { double Free=AccountFreeMargin()。 double One_Lot=MarketInfo(Symbol(),MODE_MARGINREQUIRED)。 double Min_Lot=MarketInfo(Symbol(),MODE_MINLOT)。 double Max_Lot=MarketInfo(Symbol(),MODE_MAXLOT)。 double Step=MarketInfo(Symbol(),MODE_LOTSTEP)。 double Lot=MathFloor(Free*Risk/100/One_Lot/Step)*Step。 如果(Lot<Min_Lot)Lot=Min_Lot。 如果(Lot>Max_Lot)Lot=Max_Lot。 如果(Lot*One_Lot>Free)返回(0.0)。 return(Lot)。 } //+----------Функция открытия ордера-----------------------------------+ int NewOrder(int Cmd,double Lot) { 双TP=0;//takeprofit double SL=0;//止损 双重PR=0;//价格 while(!IsTradeAllowed())Sleep(100)。 如果(TakeProfit<MarketInfo(Symbol(),MODE_STOPLEVEL)) TakeProfit=MarketInfo(Symbol(),MODE_STOPLEVEL)。 如果(StopLoss<MarketInfo(Symbol(),MODE_STOPLEVEL)) StopLoss=MarketInfo(Symbol(),MODE_STOPLEVEL)。 如果(Cmd==OP_BUYSTOP) { PR=NormalizeDouble(Ask,Digits)。 如果(TakeProfit>0)TP=NormalizeDouble(Ask+TakeProfit*Point,Digits)。 如果(StopLoss>0)SL=NormalizeDouble(Bid-StopLoss*Point,Digits)。 } 如果(Cmd==OP_SELLSTOP) { PR=NormalizeDouble(Bid,Digits)。 如果(TakeProfit>0)TP=NormalizeDouble(Bid-TakeProfit*Point,Digits)。 如果(StopLoss>0)SL=NormalizeDouble(Ask+StopLoss*Point,Digits)。 } tic=OrderSend(Symbol(),Cmd,Lot,PR,3,SL,TP,"",0,0,CLR_NONE) 。 if(tic<0)Print("Error opening order:",GetLastError()); Print("Cmd-",Cmd, "Lot=",Lot, "PR=",PR, "SL=",SL, "TP=",TP) 。 return(tic)。 } 当我检查时,我得到一个消息。 2011.12.06 23:36:50 2010.01.06 16:19 Big Dog 1.01 EURUSD,M15:OrderSend函数 的手数无效 2011.12.06 23:36:50 2010.01.06 16:19 大狗1.01 EURUSD,M15: OrderSend error 4051 2011.12.06 23:36:51 2010.01.07 17:20 大狗1.01 EURUSD,M15: 错误的订单打开:405 2011.12.06 23:36:51 2010.01.07 17:20 大狗 1.01 EURUSD,M15: Cmd-5Lot=0PR=1.4316SL=1.4419TP=1.4216 很明显,这与地段的计算有关,但我不明白是什么)))。 请告知 [ARCHIVE] Any rookie question, [警告关闭!]任何新手问题,为了不给论坛添乱。专业人士,不要走过。没有你,哪里都不能去。 How to get correct costy_ 2011.12.06 16:55 #4065 LOA: Yep...."详尽的 "答案。每个事件都必须有一个原因。专业人士在遇到一些故障时,知道应该注意什么。我把算法看了好几遍,但找不到原因。 这就是为什么我向专业人士请教--可能是什么原因? 那么,指标在哪里呢!?(我猜是通过咖啡渣电话。https://www.mql5.comhttps://www.mql5.com/ru/) 好吧,如果你把所有东西都列出来,信就会用完。 继续中断返回看是否有中断,以及中断发生的时间。与打开bar.... 的工作。 "遇到一些问题知道要注意什么",他们不注意却开始调试,也开始调试你的指标,比如通过打印(更有甚者用别人的,于是15页长,50多个调用的函数......)。 Print("дошли до инициализации, сделаем ресайз запишем все 0.0 size="+ArrayRange(buf,0)+" resize= "+ArrayResize(buf,Bars)+" "+ArrayInitialize(buf,0.0)) ; [Deleted] 2011.12.06 16:57 #4066 你好。 我已经创建了一个数组。 double fibo[]={-10.09,-5.854,-4.98,-4.108,-3.236,-2.618,-2.11,-1.618,-1.11,-0.618,-0.382,0,0.118,0.236,0.382,0.5,0.618,0.764,0.882,1,1.382,1.618,2.11,2.618,3.11,3.618,4.236,5.108,5.98,6.854,11.09}; 然而,由于某些原因,它的第一个值变成了零(-10.09变成了0)。 我通过这样做找到了摆脱困境的办法。 double fibo[]={,-10.09,-5.854,-4.98,-4.108,-3.236,-2.618,-2.11,-1.618,-1.11,-0.618,-0.382,0,0.118,0.236,0.382,0.5,0.618,0.764,0.882,1,1.382,1.618,2.11,2.618,3.11,3.618,4.236,5.108,5.98,6.854,11.09}; 你能告诉我这是怎么回事吗?我非常想了解。 预先感谢你。 costy_ 2011.12.06 17:01 #4067 nemo811:你好。我已经创建了一个数组。然而,由于某些原因,它的第一个值变成了零(-10.09变成了0)。我通过这样做找到了摆脱困境的办法。你能告诉我这是怎么回事吗?我非常想了解。预先感谢你。 我没有用索引=0进行归零 double fibo[]={-10.09,-5.854,-4.98,-4.108,-3.236,-2.618,-2.11,-1.618,-1.11,-0.618,-0.382,0,0.118,0.236,0.382,0.5,0.618,0.764,0.882,1,1.382,1.618,2.11,2.618,3.11,3.618,4.236,5.108,5.98,6.854,11.09}; Alert(fibo[0]); 2011.12.06 20:00:47 MA_TF AUDUSD,M30:Alert:-10.09 [Deleted] 2011.12.06 17:06 #4068 这里是代码中存在问题的部分。 if (FIBO) { double fibo[]={-10.09,-5.854,-4.98,-4.108,-3.236,-2.618,-2.11,-1.618,-1.11,-0.618,-0.382,0,0.118,0.236,0.382,0.5,0.618,0.764,0.882,1,1.382,1.618,2.11,2.618,3.11,3.618,4.236,5.108,5.98,6.854,11.09}; double fiboPoint = 0; for(i=1;i<ArraySize(fibo)+1;i++) { fiboPoint = NormalizeDouble(MinAsia+Asia*fibo[i],Digits); double v = 0; if (fibo[i]<0) v=(MathAbs(fibo[i])+1)*100; else v=fibo[i]*100; string kk; kk=StringConcatenate (DoubleToStr(fiboPoint,Digits)," / ",DoubleToStr(v,1),"%"); string k=DoubleToStr (i,0); ObjectCreate (nameF+k, OBJ_TREND, 0,0,0,0,0,0,0); ObjectSet (nameF+k, OBJPROP_RAY, false); ObjectSet (nameF+k, OBJPROP_TIME1, TimeBegAsia); ObjectSet (nameF+k, OBJPROP_PRICE1, fiboPoint); ObjectSet (nameF+k, OBJPROP_TIME2, FlowTime); ObjectSet (nameF+k, OBJPROP_PRICE2, fiboPoint); ObjectCreate (nameFT+k, OBJ_TEXT, 0,0,0,0,0,0,0); ObjectSet (nameFT+k, OBJPROP_TIME1, TimeBegAsia); ObjectSet (nameFT+k, OBJPROP_PRICE1, fiboPoint); ObjectSetText (nameFT+k,kk,8,"Arial"); } } 下面是上面描述的问题:从数值-10.09得出的线没有被画出来(它取的是MinAsia 的数值)。 costy_ 2011.12.06 17:09 #4069 nemo811: 这里是代码中存在问题的部分。 tuz for(i=0;i<ArraySize(fibo)/**/-/**/1;i++) costy_ 2011.12.06 17:15 #4070 mamba5: 我正试图开一个这样的挂单。 //+---------Функция расчета лота---------------------------------------+ 当我检查时,我得到一个消息。 2011.12.06 23:36:50 2010.01.06 16:19 Big Dog 1.01 EURUSD,M15: OrderSend函数的手数无效 2011.12.06 23:36:50 2010.01.06 16:19 大狗1.01 EURUSD,M15: OrderSend error 4051 2011.12.06 23:36:51 2010.01.07 17:20 大狗1.01 EURUSD,M15: 错误的订单打开:405 2011.12.06 23:36:51 2010.01.07 17:20 大狗 1.01 EURUSD,M15: Cmd-5Lot=0PR=1.4316SL=1.4419TP=1.4216 很明显,这与地段的计算有关,但我不明白是什么)))。 请告知 使用久经考验的功能,为测试者和真正的兜售 者开立订单 1...400401402403404405406407408409410411412413414...652 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
底部的鱼鳍...:-)
也是一个基本的趋势))
如果欧元下跌,多头下跌,则持平
:-)
掉期价差是否已被纳入考虑范围?
关于事实,在为...
Yeah...."详尽的 "答案。每个事件都必须有一个原因。专业人士,遇到一些故障时知道该注意什么。通过算法看了好几次,但我找不到原因 这就是为什么我向专业人士寻求建议--可能是什么原因?
我正试图开一个这样的挂单。
//+---------Функция расчета лота---------------------------------------+
double GetLot(int Risk)
{
double Free=AccountFreeMargin()。
double One_Lot=MarketInfo(Symbol(),MODE_MARGINREQUIRED)。
double Min_Lot=MarketInfo(Symbol(),MODE_MINLOT)。
double Max_Lot=MarketInfo(Symbol(),MODE_MAXLOT)。
double Step=MarketInfo(Symbol(),MODE_LOTSTEP)。
double Lot=MathFloor(Free*Risk/100/One_Lot/Step)*Step。
如果(Lot<Min_Lot)Lot=Min_Lot。
如果(Lot>Max_Lot)Lot=Max_Lot。
如果(Lot*One_Lot>Free)返回(0.0)。
return(Lot)。
}
//+----------Функция открытия ордера-----------------------------------+
int NewOrder(int Cmd,double Lot)
{
双TP=0;//takeprofit
double SL=0;//止损
双重PR=0;//价格
while(!IsTradeAllowed())Sleep(100)。
如果(TakeProfit<MarketInfo(Symbol(),MODE_STOPLEVEL))
TakeProfit=MarketInfo(Symbol(),MODE_STOPLEVEL)。
如果(StopLoss<MarketInfo(Symbol(),MODE_STOPLEVEL))
StopLoss=MarketInfo(Symbol(),MODE_STOPLEVEL)。
如果(Cmd==OP_BUYSTOP)
{
PR=NormalizeDouble(Ask,Digits)。
如果(TakeProfit>0)TP=NormalizeDouble(Ask+TakeProfit*Point,Digits)。
如果(StopLoss>0)SL=NormalizeDouble(Bid-StopLoss*Point,Digits)。
}
如果(Cmd==OP_SELLSTOP)
{
PR=NormalizeDouble(Bid,Digits)。
如果(TakeProfit>0)TP=NormalizeDouble(Bid-TakeProfit*Point,Digits)。
如果(StopLoss>0)SL=NormalizeDouble(Ask+StopLoss*Point,Digits)。
}
tic=OrderSend(Symbol(),Cmd,Lot,PR,3,SL,TP,"",0,0,CLR_NONE) 。
if(tic<0)Print("Error opening order:",GetLastError()); Print("Cmd-",Cmd, "Lot=",Lot, "PR=",PR, "SL=",SL, "TP=",TP) 。
return(tic)。
}
当我检查时,我得到一个消息。
2011.12.06 23:36:50 2010.01.06 16:19 Big Dog 1.01 EURUSD,M15:OrderSend函数 的手数无效
2011.12.06 23:36:50 2010.01.06 16:19 大狗1.01 EURUSD,M15: OrderSend error 4051
2011.12.06 23:36:51 2010.01.07 17:20 大狗1.01 EURUSD,M15: 错误的订单打开:405
2011.12.06 23:36:51 2010.01.07 17:20 大狗 1.01 EURUSD,M15: Cmd-5Lot=0PR=1.4316SL=1.4419TP=1.4216
很明显,这与地段的计算有关,但我不明白是什么)))。 请告知
Yep...."详尽的 "答案。每个事件都必须有一个原因。专业人士在遇到一些故障时,知道应该注意什么。我把算法看了好几遍,但找不到原因。 这就是为什么我向专业人士请教--可能是什么原因?
那么,指标在哪里呢!?(我猜是通过咖啡渣电话。https://www.mql5.comhttps://www.mql5.com/ru/)
好吧,如果你把所有东西都列出来,信就会用完。
继续中断返回看是否有中断,以及中断发生的时间。与打开bar.... 的工作。
"遇到一些问题知道要注意什么",他们不注意却开始调试,也开始调试你的指标,比如通过打印(更有甚者用别人的,于是15页长,50多个调用的函数......)。
你好。
我已经创建了一个数组。
然而,由于某些原因,它的第一个值变成了零(-10.09变成了0)。 我通过这样做找到了摆脱困境的办法。
你能告诉我这是怎么回事吗?我非常想了解。
预先感谢你。
你好。
我已经创建了一个数组。
然而,由于某些原因,它的第一个值变成了零(-10.09变成了0)。我通过这样做找到了摆脱困境的办法。
你能告诉我这是怎么回事吗?我非常想了解。
预先感谢你。
我没有用索引=0进行归零
2011.12.06 20:00:47 MA_TF AUDUSD,M30:Alert:-10.09
这里是代码中存在问题的部分。
下面是上面描述的问题:从数值-10.09得出的线没有被画出来(它取的是MinAsia 的数值)。
这里是代码中存在问题的部分。
tuz
我正试图开一个这样的挂单。
//+---------Функция расчета лота---------------------------------------+
当我检查时,我得到一个消息。
2011.12.06 23:36:50 2010.01.06 16:19 Big Dog 1.01 EURUSD,M15: OrderSend函数的手数无效
2011.12.06 23:36:50 2010.01.06 16:19 大狗1.01 EURUSD,M15: OrderSend error 4051
2011.12.06 23:36:51 2010.01.07 17:20 大狗1.01 EURUSD,M15: 错误的订单打开:405
2011.12.06 23:36:51 2010.01.07 17:20 大狗 1.01 EURUSD,M15: Cmd-5Lot=0PR=1.4316SL=1.4419TP=1.4216
很明显,这与地段的计算有关,但我不明白是什么)))。 请告知