初学者的问题 MQL5 MT5 MetaTrader 5 - 页 1377 1...137013711372137313741375137613771378137913801381138213831384...1503 新评论 Mikhail Toptunov 2021.11.20 07:42 #13761 Fast235 #:正如一位参与者所说,是为了工厂。由于不可能被感知 你必须给对象分配一个唯一的号码,这个号码必须从参数中收集。 - 对象的开放时间 - 物质时期 - 对象的时间框架 比如说。 int Num= TimeOpen+Period*0.0001 好吧,我不确定这个数字是否会被排斥,int下的数据类型也不适合,但最好是int Fast235 2021.11.20 13:05 #13762 Mikhail Toptunov #:必须为该对象分配一个独特的号码,这个号码必须从参数中收集。- 对象的开放时间- 物质时期- 对象的时间框架比如说。好吧,我不确定这个数字是否会被排斥,而且int下的数据类型也不适合,但最好是int 自动分配独特的号码 - tr_Deal73772984 不清楚问题是什么 Fast235 2021.11.20 13:07 #13763 看看这个简单的代码 for(uint i=0; i<total; i++) { //--- try to get deals ticket if((ticket=HistoryDealGetTicket(i))>0) { symbol=HistoryDealGetString(ticket,DEAL_SYMBOL); if(symbol!=Symbol()) continue; //--- get deals properties price =HistoryDealGetDouble(ticket,DEAL_PRICE); time =(datetime)HistoryDealGetInteger(ticket,DEAL_TIME); type =HistoryDealGetInteger(ticket,DEAL_TYPE); entry =HistoryDealGetInteger(ticket,DEAL_ENTRY); profit=HistoryDealGetDouble(ticket,DEAL_PROFIT); id =HistoryDealGetInteger(ticket, DEAL_POSITION_ID); //--- text =DoubleToString(profit,2); //--- //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ if(price && time && symbol==Symbol()) { //--- create price object name=prefix+"Deal"+string(ticket); name2=prefix+"Price"+string(ticket); if(entry==DEAL_ENTRY_IN) { ObjectCreate(0,name,OBJ_ARROW_LEFT_PRICE,0,time,price,0,0); { timeOpen=time; priceOpen=price; } } if(entry==DEAL_ENTRY_OUT) { // if(ShowRightTabTab) //---создадим метку на закрытии ObjectCreate(0,name,OBJ_ARROW_RIGHT_PRICE,0,time,price,0,0); //--- нарисуем линию сделки ObjectCreate(0,name+"_trend",OBJ_TREND,0,timeOpen,priceOpen,time,price); //--- добавим на график результат сделки ObjectCreate(0,name2,OBJ_TEXT,0,time,price+offset*_Point); if(profit>0.0) clr=inpColorTP; else clr=inpColorSL; } leonerd 2021.11.20 18:20 #13764 你好。 我如何使斐波那契水平 可见/不可见?一般来说,我们需要删除一些级别。如果我使用OBJPROP_LEVELS属性,它只是使前N层可用。如何为每个级别设置可见性属性,或完全删除它? Alexey Viktorov 2021.11.20 20:40 #13765 leonerd #:你好。我如何使斐波那契水平 可见/不可见?一般来说,我们需要删除一些级别。如果我使用OBJPROP_LEVELS属性,它只是使前N层可用。我怎样才能为每个级别设置可见性属性,或完全删除它? 它是这样的。 double fiboLev[] = {0.0, 0.236, 0.382, 0.5, 0.618, 0.764, 0.882, 1.0, 1.236, 1.382, 1.618, 2.0, 2.236, 2.618, 3.236, 3.618, 4.236}; /************************fiboCreate function*************************/ void fiboCreate(datetime t0, double p0, datetime t1, double p1) { long chartID = ChartID(); if(ObjectFind(chartID, fiboName) < 0) { ObjectCreate(chartID, fiboName, OBJ_FIBO, 0, t1, p1, t0, p0); ObjectSetInteger(chartID, fiboName, OBJPROP_WIDTH, 2); ObjectSetInteger(chartID, fiboName, OBJPROP_COLOR, clrFibo); ObjectSetInteger(chartID, fiboName, OBJPROP_LEVELS, 23); ObjectSetInteger(chartID, fiboName, OBJPROP_LEVELCOLOR, clrFibo); for(int i = 0; i < 17; i++) { ObjectSetDouble(chartID, fiboName, OBJPROP_LEVELVALUE, i, fiboLev[i]); ObjectSetString(chartID, fiboName, OBJPROP_LEVELTEXT, i, "%$ ("+DoubleToString(fiboLev[i]*100, 1)+")"); } } else if(ObjectFind(chartID, fiboName) == 0) { ObjectSetInteger(chartID, fiboName, OBJPROP_TIME, 0, t0); ObjectSetDouble(chartID, fiboName, OBJPROP_PRICE, 0, p0); ObjectSetInteger(chartID, fiboName, OBJPROP_TIME, 1, t1); ObjectSetDouble(chartID, fiboName, OBJPROP_PRICE, 1, p1); } ChartRedraw(); }/******************************************************************/ 这是从EA中摘录的,有些变量在这里没有定义。这段代码将不会被编译。 Mikhail Toptunov 2021.11.22 09:33 #13766 你好,有没有办法用标准的方法从结构中删除带有偏移量的数组元素 呢? struct OrderFib { double id; double Price[Umax]; int type; int PeriodUr50; // № Периода } trade_buff[]; 1) trade_buff[0]... trade_buff[1]... deleted trade_buff[2]... 2) trade_buff[0]... trade_buff[1]... Mikhail Toptunov 2021.11.22 10:03 #13767 像这样做,你可以做得更专业,不是吗? //+----------Удаляем старый сигнал-----------------------------------+ void filterDeal_1(int tf) { for(int i= 0; i<CountTrade; i++) if(trade_buff[i].tf == tf) { ArrayRemove(trade_buff,i,1); CountTrade--; i= 0; } } Aleksei Stepanenko 2021.11.22 10:30 #13768 Mikhail Toptunov #:做到了这一点,能不能以更专业的方式进行? 你好,要删除数组元素,要从数组的末端开始,那么你就不需要改变索引。它自己按顺序进行。 for(int i=CountTrade-1; i>=0; i--) { if(trade_buff[i].tf == tf) { ArrayRemove(trade_buff,i,1); } } Mikhail Toptunov 2021.11.22 10:58 #13769 Aleksei Stepanenko #:你好,要删除数组元素,要从数组的末端开始,那么就不需要改变索引。它自己按顺序进行。 对,很好,谢谢! Valeriy Yastremskiy 2021.11.22 12:34 #13770 Mikhail Toptunov #:必须为该对象分配一个独特的号码,这个号码必须从参数中收集。- 对象的开放时间- 物质时期- 对象的时间框架比如说。我不确定这个数字是否具有排他性,而且int下的数据类型也不适合,但最好是int 如果我们想以后解密,最好是加密对象的名称而不是数字。也就是说,我们从数字组装名称,数字组装成字符串,然后将字符串数字组装成int。唯一要做的就是用分隔符划分字段,或者考虑到每个字段的字符数。 1...137013711372137313741375137613771378137913801381138213831384...1503 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
正如一位参与者所说,是为了工厂。
由于不可能被感知
你必须给对象分配一个唯一的号码,这个号码必须从参数中收集。
- 对象的开放时间
- 物质时期
- 对象的时间框架
比如说。
好吧,我不确定这个数字是否会被排斥,int下的数据类型也不适合,但最好是int
必须为该对象分配一个独特的号码,这个号码必须从参数中收集。
- 对象的开放时间
- 物质时期
- 对象的时间框架
比如说。
好吧,我不确定这个数字是否会被排斥,而且int下的数据类型也不适合,但最好是int
自动分配独特的号码 - tr_Deal73772984
不清楚问题是什么
看看这个简单的代码
你好。
我如何使斐波那契水平 可见/不可见?一般来说,我们需要删除一些级别。如果我使用OBJPROP_LEVELS属性,它只是使前N层可用。如何为每个级别设置可见性属性,或完全删除它?
你好。
我如何使斐波那契水平 可见/不可见?一般来说,我们需要删除一些级别。如果我使用OBJPROP_LEVELS属性,它只是使前N层可用。我怎样才能为每个级别设置可见性属性,或完全删除它?
它是这样的。
这是从EA中摘录的,有些变量在这里没有定义。这段代码将不会被编译。
你好,有没有办法用标准的方法从结构中删除带有偏移量的数组元素 呢?
像这样做,你可以做得更专业,不是吗?
做到了这一点,能不能以更专业的方式进行?
你好,要删除数组元素,要从数组的末端开始,那么你就不需要改变索引。它自己按顺序进行。
你好,要删除数组元素,要从数组的末端开始,那么就不需要改变索引。它自己按顺序进行。
对,很好,谢谢!
必须为该对象分配一个独特的号码,这个号码必须从参数中收集。
- 对象的开放时间
- 物质时期
- 对象的时间框架
比如说。
我不确定这个数字是否具有排他性,而且int下的数据类型也不适合,但最好是int
如果我们想以后解密,最好是加密对象的名称而不是数字。也就是说,我们从数字组装名称,数字组装成字符串,然后将字符串数字组装成int。唯一要做的就是用分隔符划分字段,或者考虑到每个字段的字符数。