编码帮助 - 页 439 1...432433434435436437438439440441442443444445446...786 新评论 Mladen Rakic 2015.03.13 08:21 #4381 neverbeast: 又见面了。所以我做了一个带箭头的简单指标。不幸的是,它没有按照我的要求画出它们。我的目标是在条件满足时显示一个箭头,但当条件不再满足时,它应该删除这个箭头。举个例子。在当前蜡烛图的15秒内,条件得到满足,它画了一个箭头,然后它改变了方向,条件不再满足,所以它应该在当前蜡烛图收盘前删除这个箭头。目前,当条件得到满足时,它就会画出箭头,而且根本不重画,此外,还有显示它是否进入ITM或OTM/ATM的到期箭头,在刷新之前根本不画。谁能看一下并帮我解决这个问题? 6s.mq4 你的代码中根本就没有对前15秒的检查。你为什么不把这个检查也加进去呢? tmc 2015.03.13 13:41 #4382 mladen: 你的代码中根本就没有对前15秒的检查。你为什么不把这个检查也加进去呢? 我的错。这是我在这里描述的那个指标的另一个版本。无论如何,我是编码mql4的新手,不知道如何做。你能不能把这段代码写成一个小教程,说明它是如何工作的? Mladen Rakic 2015.03.13 14:40 #4383 neverbeast: 我的错。我在这里描述的是该指标的另一个版本。无论如何,我是编码mql4的新手,不知道如何做到这一点。你能不能把这段代码写成小教程,说明它是如何工作的? 你可以这样做。 如果(TimeCurrent()-Time[0])>15)返回(0)。 把它放在start()过程的开头(作为其中的第一行),如果从当前蜡烛开始的秒数大于15,它将阻止其余代码的执行。 godricha 2015.03.13 17:50 #4384 我有一个EA的代码,但我的技能是.....none。 我试着编译它,把错误解决掉,但没有成功。 有谁能帮忙吗? //|$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ // Price Action V1 //hodhabi@gmail.com//|$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ #define NL "\n" extern double Lots = 1; extern double TP = 100; extern int TradeType = 0; // 0 to follow the trend, 1 to force buy, 2 to force sell extern int leverage = 5; extern double MaximumLossinMoney = 1000; extern int MagicNumber = 250346; extern bool UseAlerts = false; //+-------------+ //| Custom init |/|-------------+ int init() { } //+----------------+ //| Custom DE-init | //+----------------+ int deinit() { } void sendEmail() { if (UseAlerts==true) SendMail("YTF Alert", "New order has been added "+OrdersTotal()+" Balance = " +AccountBalance() + " Equity = " +AccountEquity() +" Current Price:" + Close[0]); return; } void DrawHorizentalLine() { ObjectCreate("Tprofit", OBJ_HLINE, 0, Time[1], Close[0]+500*Point); ObjectSet("Tprofit", OBJPROP_STYLE, STYLE_SOLID); ObjectSet("Tprofit", OBJPROP_COLOR, MediumSeaGreen); } //+! //+------------------------------------------------------------------------+ //|关闭一切 //+------------------------------------------------------------------------+ void CloseAll() { for(int i=OrdersTotal()-1;i>=0;i-) { OrderSelect(i, SELECT_BY_POS); bool result = false; if ( OrderType() == OP_BUY && OrderMagicNumber()== MagicNumber) result = OrderClose( OrderTicket(), OrderLots(), MarketInfo( OrderSymbol(), MODE_BID), 5, Red ) 。 如果( OrderType() == OP_SELL && OrderMagicNumber()==MagicNumber) result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), 5, Red ); if ( UseAlerts) PlaySound( "alert.wav"); } return; } void CloseAllBuy() { for(int i=OrdersTotal()-1;i>=0;i-) { OrderSelect(i, SELECT_BY_POS); bool result = false; if ( OrderType() == OP_BUY && OrderMagicNumber()==MagicNumber) result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_BID), 5, Red ); if ( UseAlerts) PlaySound( "alert.wav"); } return; } void CloseAllSell() { for(int i=OrdersTotal()-1;i>=0;i-) { OrderSelect(i, SELECT_BY_POS); bool result = false; if ( OrderType() == OP_SELL && OrderMagicNumber()==MagicNumber) result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), 5, Red ); if ( UseAlerts) PlaySound("alert.wav"); } return; } //++ //| cancelled. //+------------------------------------------------------------------------+ //|取消所有处于盈利状态的订单 //+------------------------------------------------------------------------+ //|取消所有挂单 //+------------------------------------------------------------------------+ //+-----------+ //|主 | //+-----------+ int start() { int OrdersBUY, ticket; int OrdersSELL; double BuyLots, SellLots, BuyProfit, SellProfit; //+------------------------------------------------------------------+ //确定最后的订单价格 | //-------------------------------------------------------------------+ if(OrdersTotal()==0 && TradeType ==1 ) { ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Ask-TP*Point,Ask+leverage*TP*Point, "MLTrendETF",MagicNumber,0,Green) 。 TradeType=2; if(ticket>0) { if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) sendEmail(); } else Print("错误打开BUY订单:",GetLastError()); return(0); } if(OrdersTotal()==0 && TradeType ==2) { ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid+TP*Point, Bid-TP*leverage*Point, "MLTrendETF",MagicNumber,0,Green) 。 TradeType = 1; if(ticket>0) { if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) sendEmail(); } else Print("错误打开BUY订单 :",GetLastError()); return(0); } }// start() Coding help 如何编码? 新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 godricha 2015.03.13 17:53 #4385 对不起,这里没有乱七八糟的东西 //|$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ // Price Action V1 //hodhabi@gmail.com//|$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ #define NL "\n" extern double Lots = 1; extern double TP = 100; extern int TradeType = 0; // 0为跟随趋势,1为强制买入,2为强制卖出 extern int leverage = 5; extern double MaximumLossinMoney = 1000; extern int MagicNumber = 250346; extern bool UseAlerts = false; //+-------------+ //| Custom init |/|-------------+ int init() { } //+----------------+ //| Custom DE-init | //+----------------+ int deinit() { } void sendEmail() { if (UseAlerts==true) SendMail("YTF Alert", "New order has been added "+OrdersTotal()+" Balance = " +AccountBalance() + " Equity = " +AccountEquity() +" Current Price:" + Close[0]); return; } void DrawHorizentalLine() { ObjectCreate("Tprofit", OBJ_HLINE, 0, Time[1], Close[0]+500*Point); ObjectSet("Tprofit", OBJPROP_STYLE, STYLE_SOLID); ObjectSet("Tprofit", OBJPROP_COLOR, MediumSeaGreen); } //+! //+------------------------------------------------------------------------+ //|关闭一切 //+------------------------------------------------------------------------+ void CloseAll() { for(int i=OrdersTotal()-1;i>=0;i-) { OrderSelect(i, SELECT_BY_POS); bool result = false; if ( OrderType() == OP_BUY && OrderMagicNumber()== MagicNumber) result = OrderClose( OrderTicket(), OrderLots(), MarketInfo( OrderSymbol(), MODE_BID), 5, Red ) 。 如果( OrderType() == OP_SELL && OrderMagicNumber()==MagicNumber) result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), 5, Red ); if ( UseAlerts) PlaySound( "alert.wav"); } return; } void CloseAllBuy() { for(int i=OrdersTotal()-1;i>=0;i-) { OrderSelect(i, SELECT_BY_POS); bool result = false; if ( OrderType() == OP_BUY && OrderMagicNumber()==MagicNumber) result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_BID), 5, Red ); if ( UseAlerts) PlaySound( "alert.wav"); } return; } void CloseAllSell() { for(int i=OrdersTotal()-1;i>=0;i-) { OrderSelect(i, SELECT_BY_POS); bool result = false; if ( OrderType() == OP_SELL && OrderMagicNumber()==MagicNumber) result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), 5, Red ); if ( UseAlerts) PlaySound("alert.wav"); } return; } //++ //| cancelled. //+------------------------------------------------------------------------+ //|取消所有处于盈利状态的订单 //+------------------------------------------------------------------------+ //|取消所有挂单 //+------------------------------------------------------------------------+ //+-----------+ //|主 | //+-----------+ int start() { int OrdersBUY, ticket; int OrdersSELL; double BuyLots, SellLots, BuyProfit, SellProfit; //+------------------------------------------------------------------+ //确定最后的订单价格 |/-------------------------------------------------------------------+ if(OrdersTotal()==0 && TradeType ==1 ) { ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Ask-TP*Point,Ask+leverage*TP*Point, "MLTrendETF",MagicNumber,0,Green) TradeType=2; if(ticket>0) { if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) sendEmail(); } else Print("错误打开BUY订单:",GetLastError()); return(0); } if(OrdersTotal()==0 && TradeType ==2) { ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid+TP*Point, Bid-TP*leverage*Point, "MLTrendETF",MagicNumber,0,Green) 。 TradeType = 1; if(ticket>0) { if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) sendEmail(); } else Print("错误打开BUY订单 :",GetLastError()); return(0); } }// start() Coding help 如何编码? 新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 Mladen Rakic 2015.03.13 18:12 #4386 godrich: 对不起,这里没有乱七八糟的东西 //|$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ //价格行动 V1 //hodhabi@gmail.com//|$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ #define NL "\n" extern double Lots = 1; extern double TP = 100; extern int TradeType = 0; // 0表示跟随趋势,1表示强制买入,2表示强制卖出 extern int leverage = 5; extern double MaximumLossinMoney = 1000; extern int MagicNumber = 250346; extern bool UseAlerts = false; //+-------------+ //| Custom init | //|-------------+ int init() { } //+----------------+ //| Custom DE-init | //+----------------+ int deinit() { } void sendEmail() { if (UseAlerts==true) SendMail("YTF Alert", "New order has been added "+OrdersTotal()+" Balance = " +AccountBalance() + " Equity = " +AccountEquity() +" Current Price:" + Close[0]); return; } void DrawHorizentalLine() { ObjectCreate("Tprofit", OBJ_HLINE, 0, Time[1], Close[0]+500*Point); ObjectSet("Tprofit", OBJPROP_STYLE, STYLE_SOLID); ObjectSet("Tprofit", OBJPROP_COLOR, MediumSeaGreen); } //+! //+------------------------------------------------------------------------+ //|关闭一切 //+------------------------------------------------------------------------+ void CloseAll() { for(int i=OrdersTotal()-1;i>=0;i-) { OrderSelect(i, SELECT_BY_POS); bool result = false; if ( OrderType() == OP_BUY && OrderMagicNumber()== MagicNumber) result = OrderClose( OrderTicket(), OrderLots(), MarketInfo( OrderSymbol(), MODE_BID), 5, Red ) 。 如果( OrderType() == OP_SELL && OrderMagicNumber()==MagicNumber) result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), 5, Red ); if ( UseAlerts) PlaySound( "alert.wav"); } return; } void CloseAllBuy() { for(int i=OrdersTotal()-1;i>=0;i-) { OrderSelect(i, SELECT_BY_POS); bool result = false; if ( OrderType() == OP_BUY && OrderMagicNumber()==MagicNumber) result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_BID), 5, Red ); if ( UseAlerts) PlaySound( "alert.wav"); } return; } void CloseAllSell() { for(int i=OrdersTotal()-1;i>=0;i-) { OrderSelect(i, SELECT_BY_POS); bool result = false; if ( OrderType() == OP_SELL && OrderMagicNumber()==MagicNumber) result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), 5, Red ); if ( UseAlerts) PlaySound("alert.wav"); } return; } //++ //| cancelled. //+------------------------------------------------------------------------+ //|取消所有处于盈利状态的订单 //+------------------------------------------------------------------------+ //|取消所有挂单 //+------------------------------------------------------------------------+ //+-----------+ //|主 | //+-----------+ int start() { int OrdersBUY, ticket; int OrdersSELL; double BuyLots, SellLots, BuyProfit, SellProfit; //+------------------------------------------------------------------+ //确定最后的订单价格 | //-------------------------------------------------------------------+ if(OrdersTotal()==0 && TradeType ==1 ) { ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Ask-TP*Point,Ask+leverage*TP*Point, "MLTrendETF",MagicNumber,0,Green) 。 TradeType=2; if(ticket>0) { if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) sendEmail(); } else Print("错误打开BUY订单:",GetLastError()); return(0); } if(OrdersTotal()==0 && TradeType ==2) { ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid+TP*Point, Bid-TP*leverage*Point, "MLTrendETF",MagicNumber,0,Green) 。 TradeType = 1; if(ticket>0) { if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) sendEmail(); } else Print("错误打开BUY订单:",GetLastError()); return(0); } }// start() 冯小刚 你能附上mq4文件吗? 这样的话,如果粘贴到元编辑器中就无法使用了。 godricha 2015.03.13 18:22 #4387 不确定这是否有效,但... 附加的文件: pac.mq4 5 kb Malle Simpson 2015.03.13 19:17 #4388 你好。 我刚刚发现了PetD指标,它可以在我的蜡烛图上画一条红色或绿色的线。我想知道的是,是否有可能用彩色柱状图的条带来代替。 这样我就可以有一个单独的窗口,上面有绿色或红色的柱子。 谢谢 pet-d_full_option.mq4 附加的文件: pet-d_full_option.mq4 3 kb Mladen Rakic 2015.03.14 09:03 #4389 NWFstudent: 你好。我刚刚发现了PetD指标,它可以在我的蜡烛图上画一条红色或绿色的线。我想知道的是,是否有可能用一条彩色直方图来代替。 这样我就可以有一个单独的窗口,上面有绿色或红色的柱子。 谢谢 pet-d_full_option.mq4 尊敬的NWF学生 这里也有这种类型:pet-d_full_option_-_separate.mq4 附加的文件: pet-d_full_option_-_separate.mq4 2 kb pet-d.gif 62 kb William Snyder 2015.03.14 14:56 #4390 makototokyo: 你好。这个指标似乎不能很好地发出警报。我觉得它只在MT4启动后发出过一次警报,而在第一次警报之后,它就不发出声音了。我还意识到,它只在条形图处于 "高潮 "时发出声音,但我希望它在条形图处于 "上升 "时发出声音。 有谁能修复这个音量指标的代码? 如果你有时间为这个蜡烛指标做同样的事情,我很感激,但我不想占用你太多的时间。 提前谢谢你。 Makototokyo,把独立窗口版本中的警报改掉了,使用 "牛市上涨和熊市上涨 "的警报,它们在这个版本中应该可以正常工作。 附加的文件: sonicr_pva_volumes_black_alerts.mq4 15 kb 1...432433434435436437438439440441442443444445446...786 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
又见面了。
所以我做了一个带箭头的简单指标。不幸的是,它没有按照我的要求画出它们。我的目标是在条件满足时显示一个箭头,但当条件不再满足时,它应该删除这个箭头。举个例子。在当前蜡烛图的15秒内,条件得到满足,它画了一个箭头,然后它改变了方向,条件不再满足,所以它应该在当前蜡烛图收盘前删除这个箭头。目前,当条件得到满足时,它就会画出箭头,而且根本不重画,此外,还有显示它是否进入ITM或OTM/ATM的到期箭头,在刷新之前根本不画。谁能看一下并帮我解决这个问题?
6s.mq4你的代码中根本就没有对前15秒的检查。你为什么不把这个检查也加进去呢?
你的代码中根本就没有对前15秒的检查。你为什么不把这个检查也加进去呢?
我的错。这是我在这里描述的那个指标的另一个版本。无论如何,我是编码mql4的新手,不知道如何做。你能不能把这段代码写成一个小教程,说明它是如何工作的?
我的错。我在这里描述的是该指标的另一个版本。无论如何,我是编码mql4的新手,不知道如何做到这一点。你能不能把这段代码写成小教程,说明它是如何工作的?
你可以这样做。
如果(TimeCurrent()-Time[0])>15)返回(0)。
把它放在start()过程的开头(作为其中的第一行),如果从当前蜡烛开始的秒数大于15,它将阻止其余代码的执行。
我有一个EA的代码,但我的技能是.....none。 我试着编译它,把错误解决掉,但没有成功。
有谁能帮忙吗?
//|$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ // Price Action V1 //hodhabi@gmail.com//|$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ #define NL "\n" extern double Lots = 1; extern double TP = 100; extern int TradeType = 0; // 0 to follow the trend, 1 to force buy, 2 to force sell extern int leverage = 5; extern double MaximumLossinMoney = 1000; extern int MagicNumber = 250346; extern bool UseAlerts = false; //+-------------+ //| Custom init |/|-------------+ int init() { } //+----------------+ //| Custom DE-init | //+----------------+ int deinit() { } void sendEmail() { if (UseAlerts==true) SendMail("YTF Alert", "New order has been added "+OrdersTotal()+" Balance = " +AccountBalance() + " Equity = " +AccountEquity() +" Current Price:" + Close[0]); return; } void DrawHorizentalLine() { ObjectCreate("Tprofit", OBJ_HLINE, 0, Time[1], Close[0]+500*Point); ObjectSet("Tprofit", OBJPROP_STYLE, STYLE_SOLID); ObjectSet("Tprofit", OBJPROP_COLOR, MediumSeaGreen); } //+! //+------------------------------------------------------------------------+ //|关闭一切 //+------------------------------------------------------------------------+ void CloseAll() { for(int i=OrdersTotal()-1;i>=0;i-) { OrderSelect(i, SELECT_BY_POS); bool result = false; if ( OrderType() == OP_BUY && OrderMagicNumber()== MagicNumber) result = OrderClose( OrderTicket(), OrderLots(), MarketInfo( OrderSymbol(), MODE_BID), 5, Red ) 。 如果( OrderType() == OP_SELL && OrderMagicNumber()==MagicNumber) result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), 5, Red ); if ( UseAlerts) PlaySound( "alert.wav"); } return; } void CloseAllBuy() { for(int i=OrdersTotal()-1;i>=0;i-) { OrderSelect(i, SELECT_BY_POS); bool result = false; if ( OrderType() == OP_BUY && OrderMagicNumber()==MagicNumber) result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_BID), 5, Red ); if ( UseAlerts) PlaySound( "alert.wav"); } return; } void CloseAllSell() { for(int i=OrdersTotal()-1;i>=0;i-) { OrderSelect(i, SELECT_BY_POS); bool result = false; if ( OrderType() == OP_SELL && OrderMagicNumber()==MagicNumber) result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), 5, Red ); if ( UseAlerts) PlaySound("alert.wav"); } return; } //++ //| cancelled. //+------------------------------------------------------------------------+ //|取消所有处于盈利状态的订单 //+------------------------------------------------------------------------+ //|取消所有挂单 //+------------------------------------------------------------------------+ //+-----------+ //|主 | //+-----------+ int start() { int OrdersBUY, ticket; int OrdersSELL; double BuyLots, SellLots, BuyProfit, SellProfit; //+------------------------------------------------------------------+ //确定最后的订单价格 | //-------------------------------------------------------------------+ if(OrdersTotal()==0 && TradeType ==1 ) { ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Ask-TP*Point,Ask+leverage*TP*Point, "MLTrendETF",MagicNumber,0,Green) 。 TradeType=2; if(ticket>0) { if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) sendEmail(); } else Print("错误打开BUY订单:",GetLastError()); return(0); } if(OrdersTotal()==0 && TradeType ==2) { ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid+TP*Point, Bid-TP*leverage*Point, "MLTrendETF",MagicNumber,0,Green) 。 TradeType = 1; if(ticket>0) { if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) sendEmail(); } else Print("错误打开BUY订单 :",GetLastError()); return(0); } }// start()
对不起,这里没有乱七八糟的东西
//|$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ // Price Action V1 //hodhabi@gmail.com//|$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ #define NL "\n" extern double Lots = 1; extern double TP = 100; extern int TradeType = 0; // 0为跟随趋势,1为强制买入,2为强制卖出 extern int leverage = 5; extern double MaximumLossinMoney = 1000; extern int MagicNumber = 250346; extern bool UseAlerts = false; //+-------------+ //| Custom init |/|-------------+ int init() { } //+----------------+ //| Custom DE-init | //+----------------+ int deinit() { } void sendEmail() { if (UseAlerts==true) SendMail("YTF Alert", "New order has been added "+OrdersTotal()+" Balance = " +AccountBalance() + " Equity = " +AccountEquity() +" Current Price:" + Close[0]); return; } void DrawHorizentalLine() { ObjectCreate("Tprofit", OBJ_HLINE, 0, Time[1], Close[0]+500*Point); ObjectSet("Tprofit", OBJPROP_STYLE, STYLE_SOLID); ObjectSet("Tprofit", OBJPROP_COLOR, MediumSeaGreen); } //+! //+------------------------------------------------------------------------+ //|关闭一切 //+------------------------------------------------------------------------+ void CloseAll() { for(int i=OrdersTotal()-1;i>=0;i-) { OrderSelect(i, SELECT_BY_POS); bool result = false; if ( OrderType() == OP_BUY && OrderMagicNumber()== MagicNumber) result = OrderClose( OrderTicket(), OrderLots(), MarketInfo( OrderSymbol(), MODE_BID), 5, Red ) 。 如果( OrderType() == OP_SELL && OrderMagicNumber()==MagicNumber) result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), 5, Red ); if ( UseAlerts) PlaySound( "alert.wav"); } return; } void CloseAllBuy() { for(int i=OrdersTotal()-1;i>=0;i-) { OrderSelect(i, SELECT_BY_POS); bool result = false; if ( OrderType() == OP_BUY && OrderMagicNumber()==MagicNumber) result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_BID), 5, Red ); if ( UseAlerts) PlaySound( "alert.wav"); } return; } void CloseAllSell() { for(int i=OrdersTotal()-1;i>=0;i-) { OrderSelect(i, SELECT_BY_POS); bool result = false; if ( OrderType() == OP_SELL && OrderMagicNumber()==MagicNumber) result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), 5, Red ); if ( UseAlerts) PlaySound("alert.wav"); } return; } //++ //| cancelled. //+------------------------------------------------------------------------+ //|取消所有处于盈利状态的订单 //+------------------------------------------------------------------------+ //|取消所有挂单 //+------------------------------------------------------------------------+ //+-----------+ //|主 | //+-----------+ int start() { int OrdersBUY, ticket; int OrdersSELL; double BuyLots, SellLots, BuyProfit, SellProfit; //+------------------------------------------------------------------+ //确定最后的订单价格 |/-------------------------------------------------------------------+ if(OrdersTotal()==0 && TradeType ==1 ) { ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Ask-TP*Point,Ask+leverage*TP*Point, "MLTrendETF",MagicNumber,0,Green) TradeType=2; if(ticket>0) { if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) sendEmail(); } else Print("错误打开BUY订单:",GetLastError()); return(0); } if(OrdersTotal()==0 && TradeType ==2) { ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid+TP*Point, Bid-TP*leverage*Point, "MLTrendETF",MagicNumber,0,Green) 。 TradeType = 1; if(ticket>0) { if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) sendEmail(); } else Print("错误打开BUY订单 :",GetLastError()); return(0); } }// start()
对不起,这里没有乱七八糟的东西 //|$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ //价格行动 V1 //hodhabi@gmail.com//|$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ #define NL "\n" extern double Lots = 1; extern double TP = 100; extern int TradeType = 0; // 0表示跟随趋势,1表示强制买入,2表示强制卖出 extern int leverage = 5; extern double MaximumLossinMoney = 1000; extern int MagicNumber = 250346; extern bool UseAlerts = false; //+-------------+ //| Custom init | //|-------------+ int init() { } //+----------------+ //| Custom DE-init | //+----------------+ int deinit() { } void sendEmail() { if (UseAlerts==true) SendMail("YTF Alert", "New order has been added "+OrdersTotal()+" Balance = " +AccountBalance() + " Equity = " +AccountEquity() +" Current Price:" + Close[0]); return; } void DrawHorizentalLine() { ObjectCreate("Tprofit", OBJ_HLINE, 0, Time[1], Close[0]+500*Point); ObjectSet("Tprofit", OBJPROP_STYLE, STYLE_SOLID); ObjectSet("Tprofit", OBJPROP_COLOR, MediumSeaGreen); } //+! //+------------------------------------------------------------------------+ //|关闭一切 //+------------------------------------------------------------------------+ void CloseAll() { for(int i=OrdersTotal()-1;i>=0;i-) { OrderSelect(i, SELECT_BY_POS); bool result = false; if ( OrderType() == OP_BUY && OrderMagicNumber()== MagicNumber) result = OrderClose( OrderTicket(), OrderLots(), MarketInfo( OrderSymbol(), MODE_BID), 5, Red ) 。 如果( OrderType() == OP_SELL && OrderMagicNumber()==MagicNumber) result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), 5, Red ); if ( UseAlerts) PlaySound( "alert.wav"); } return; } void CloseAllBuy() { for(int i=OrdersTotal()-1;i>=0;i-) { OrderSelect(i, SELECT_BY_POS); bool result = false; if ( OrderType() == OP_BUY && OrderMagicNumber()==MagicNumber) result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_BID), 5, Red ); if ( UseAlerts) PlaySound( "alert.wav"); } return; } void CloseAllSell() { for(int i=OrdersTotal()-1;i>=0;i-) { OrderSelect(i, SELECT_BY_POS); bool result = false; if ( OrderType() == OP_SELL && OrderMagicNumber()==MagicNumber) result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), 5, Red ); if ( UseAlerts) PlaySound("alert.wav"); } return; } //++ //| cancelled. //+------------------------------------------------------------------------+ //|取消所有处于盈利状态的订单 //+------------------------------------------------------------------------+ //|取消所有挂单 //+------------------------------------------------------------------------+ //+-----------+ //|主 | //+-----------+ int start() { int OrdersBUY, ticket; int OrdersSELL; double BuyLots, SellLots, BuyProfit, SellProfit; //+------------------------------------------------------------------+ //确定最后的订单价格 | //-------------------------------------------------------------------+ if(OrdersTotal()==0 && TradeType ==1 ) { ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Ask-TP*Point,Ask+leverage*TP*Point, "MLTrendETF",MagicNumber,0,Green) 。 TradeType=2; if(ticket>0) { if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) sendEmail(); } else Print("错误打开BUY订单:",GetLastError()); return(0); } if(OrdersTotal()==0 && TradeType ==2) { ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid+TP*Point, Bid-TP*leverage*Point, "MLTrendETF",MagicNumber,0,Green) 。 TradeType = 1; if(ticket>0) { if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) sendEmail(); } else Print("错误打开BUY订单:",GetLastError()); return(0); } }// start()
冯小刚
你能附上mq4文件吗?
这样的话,如果粘贴到元编辑器中就无法使用了。
不确定这是否有效,但...
你好。
我刚刚发现了PetD指标,它可以在我的蜡烛图上画一条红色或绿色的线。我想知道的是,是否有可能用彩色柱状图的条带来代替。
这样我就可以有一个单独的窗口,上面有绿色或红色的柱子。
谢谢
pet-d_full_option.mq4
你好。
我刚刚发现了PetD指标,它可以在我的蜡烛图上画一条红色或绿色的线。我想知道的是,是否有可能用一条彩色直方图来代替。
这样我就可以有一个单独的窗口,上面有绿色或红色的柱子。
谢谢
pet-d_full_option.mq4尊敬的NWF学生
这里也有这种类型:pet-d_full_option_-_separate.mq4
你好。
这个指标似乎不能很好地发出警报。我觉得它只在MT4启动后发出过一次警报,而在第一次警报之后,它就不发出声音了。我还意识到,它只在条形图处于 "高潮 "时发出声音,但我希望它在条形图处于 "上升 "时发出声音。
有谁能修复这个音量指标的代码?
如果你有时间为这个蜡烛指标做同样的事情,我很感激,但我不想占用你太多的时间。
提前谢谢你。Makototokyo,把独立窗口版本中的警报改掉了,使用 "牛市上涨和熊市上涨 "的警报,它们在这个版本中应该可以正常工作。