任何菜鸟问题,为了不给论坛添乱。专业人士,不要路过。没有你就无处可去 - 6. - 页 1153 1...114611471148114911501151115211531154115511561157115811591160...1178 新评论 Vitalie Postolache 2017.06.15 17:58 #11521 kalmyk87:你好!我不能在metatrader4中授权mql5来订阅信号...怎么办?写一个请求给servicedesk(在左边的资料中),并附上细节和屏幕截图。 pavlic 2017.06.15 22:00 #11522 猫头鹰应该在几对上耕作,最好是每买图的两只猫头鹰与自己分开。就像现在这样,它可以开到无限大int _OrdersTotal=OrdersTotal()。for (int i=_OrdersTotal-1; i>=0; i--) {如果(OrderSelect(i,SELECT_BY_POS)){如果(OrderMagicNumber() == Magic){如果(OrderSymbol() == Symbol(){如果(OrderType() == OP_BUY){}}}}}如果(MaPrevious>MaPrevious1){ticket=OrderSend(Symbol(,OP_BUY,Lots,Ask,3,Ask-StopLoss*Point ,Ask+TakeProfit*Point, "macd sample",Magic,0,Green);如果(ticket>0){如果(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))Print("BUY订单打开:",OrderOpenPrice())。}否则Print("Error opening BUY order : ",GetLastError())。返回。} Any rookie question, so 新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 [存档!]任何菜鸟问题,为了不给论坛添乱。专业人士,不要与它擦肩而过。没有你,哪里都不能去 - 2. pavlic 2017.06.15 22:01 #11523 帮助谁可以 Rinat Kaibyshev 2017.06.22 17:07 #11524 大家下午好!我知道有可能在指标中实现信号输出。a).当它出现在当前条形图上而不等待它关闭时。在这种情况下,在收盘后,信号可以被取消。b).在出现信号的条形图收盘后。我对变体a)感兴趣。如何在一个指标中实现警报,而不需要等待条形图的关闭?我试图在指标代码的第39行将其作为参数选择来实现,但没有成功。如何正确操作?extern int shift = 0; // 在哪个条形上考虑信号:0--在当前条形上;1--在封闭条形上。如果能得到帮助,我将非常感激! 附加的文件: MA_8-20_EUR_H1.mq4 14 kb Victor Nikolaev 2017.06.22 18:17 #11525 Tornado:大家下午好!我知道有可能在指标中实现信号输出。a).当它出现在当前条形图上而不等待它关闭时。在这种情况下,在收盘后,信号可以被取消。b).在出现信号的条形图收盘后。我对变体a)感兴趣。如何在一个指标中实现警报,而不需要等待条形图的关闭?我试图在指标代码的第39行将其作为参数选择来实现,但没有成功。如何正确操作?extern int shift = 0; // 在哪个条形上考虑信号:0--在当前条形上;1--在封闭条形上。我将非常感谢您的帮助!我得到的信息大约是这样的//+---------------------------------------------------------------------------------+ //+ MA2_Signal + //+ Индикатор сигналов при пересечении 2-х средних + //+ + //+ Внешние параметры: + //+ ExtPeriodFastMA - период быстой средней + //+ ExtPeriodSlowMA - период медленной средней + //+ ExtModeFastMA - режим быстой средней + //+ ExtModeSlowMA - режим медленной средней + //+ Режимы: 0 = SMA, 1 = EMA, 2 = SMMA (сглаженная), 3 = LWMA (взвешенная) + //+ ExtPriceFastMA - цена быстрой средней + //+ ExtPriceSlowMA - цена медленной средней + //+ Цены: 0 = Close, 1 = Open, 2 = High, 3 = Low, 4 = HL/2, 5 = HLC/3, 6 = HLCC/4 + //+---------------------------------------------------------------------------------+ #property copyright "Copyright © 2015, Karakurt (mod. GromoZeka 2017)" #property link "" //---- Определение индикаторов #property indicator_chart_window #property indicator_buffers 4 //---- Цвета #property indicator_color1 Red // 5 #property indicator_color2 Green // 7 #property indicator_color3 DeepSkyBlue #property indicator_color4 Magenta #property indicator_width1 2 #property indicator_width2 2 #property indicator_width3 2 #property indicator_width4 2 //---- Параметры extern int ExtPeriodFastMA = 8; extern int ExtPeriodSlowMA = 20; extern int ExtModeFastMA = 1; // 0 = SMA, 1 = EMA, 2 = SMMA, 3 = LWMA extern int ExtModeSlowMA = 1; // 0 = SMA, 1 = EMA, 2 = SMMA, 3 = LWMA extern int ExtPriceFastMA = 0; // 0 = Close, 1 = Open, 2 = High, 3 = Low, 4 = HL/2, 5 = HLC/3, 6 = HLCC/4 extern int ExtPriceSlowMA = 0; // 0 = Close, 1 = Open, 2 = High, 3 = Low, 4 = HL/2, 5 = HLC/3, 6 = HLCC/4 extern int shift=0; // На каком баре считать сигнал: 0 - на текущем; 1 - на закрытом extern bool EnableAlert=true; extern bool EnableSendNotification=false; extern bool EnableSendMail = false; extern bool EnableSound = false; extern string ExtSoundFileNameUp = "Покупаем.wav"; extern string ExtSoundFileNameDn = "Продаем.wav"; //---- Буферы double FastMA[]; double SlowMA[]; double CrossUp[]; double CrossDown[]; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- Установка параметров прорисовки // Средние SetIndexStyle(0,DRAW_LINE); SetIndexStyle(1,DRAW_LINE); // Сигналы SetIndexStyle(2,DRAW_ARROW,EMPTY); SetIndexArrow(2,233); SetIndexStyle(3,DRAW_ARROW,EMPTY); SetIndexArrow(3,234); //---- Задание буферов SetIndexBuffer(0,FastMA); SetIndexBuffer(1,SlowMA); SetIndexBuffer(2,CrossUp); SetIndexBuffer(3,CrossDown); IndicatorDigits(MarketInfo(Symbol(),MODE_DIGITS)); //---- Название и метки IndicatorShortName("MA2_SignalV2("+ExtPeriodFastMA+","+ExtPeriodSlowMA); SetIndexLabel(0,"MA("+ExtPeriodFastMA+","+ExtPeriodSlowMA+")"+ExtPeriodFastMA); SetIndexLabel(1,"MA("+ExtPeriodFastMA+","+ExtPeriodSlowMA+")"+ExtPeriodSlowMA); SetIndexLabel(2,"Buy"); SetIndexLabel(3,"Sell"); return ( 0 ); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { double AvgRange; int iLimit; int i; int counted_bars=IndicatorCounted(); //---- check for possible errors if(counted_bars<0) return ( -1 ); //---- last counted bar will be recounted if(counted_bars>0) counted_bars--; iLimit=Bars-counted_bars; for(i=iLimit; i>=0; i--) { FastMA[i] = iMA( NULL, 0, ExtPeriodFastMA, 0, ExtModeFastMA, ExtPriceFastMA, i ); SlowMA[i] = iMA( NULL, 0, ExtPeriodSlowMA, 0, ExtModeSlowMA, ExtPriceSlowMA, i ); AvgRange=(iMA(NULL,0,10,0,MODE_SMA,PRICE_HIGH,i)-iMA(NULL,0,10,0,MODE_SMA,PRICE_LOW,i))*0.1; CrossDown[i+1]=EMPTY_VALUE; CrossUp[i+1]=EMPTY_VALUE; if((FastMA[i+1]>=SlowMA[i+1]) && (FastMA[i+2]<=SlowMA[i+2]) && (FastMA[i]>SlowMA[i])) // пересечение вверх {// CrossUp[i+1]=SlowMA[i+1]-Range*0.75; } if((FastMA[i+1]<=SlowMA[i+1]) && (FastMA[i+2]>=SlowMA[i+2]) && (FastMA[i]<SlowMA[i])) // пересечение вниз {// CrossDown[i+1]=SlowMA[i+1]+Range*0.75; } } static datetime TimeAlert=0; if(TimeAlert!=Time[0]) { TimeAlert=Time[0]; if(CrossUp[shift]!=EMPTY_VALUE) { if(EnableAlert) Alert("MA 8-20 ",Symbol()," ",Period(),"M - BUY "); // звуковой сигнал if(EnableSound) PlaySound(ExtSoundFileNameUp); if(EnableSendNotification) SendNotification("MA 8-20 EUR_H1 - BUY"); // push-уведомление if(EnableSendMail) SendMail("MA 8-20: ",Symbol()+" , "+Period()+" мин.- BUY!"); // email-уведомление } if(CrossDown[shift]!=EMPTY_VALUE) { if(EnableAlert) Alert("MA 8-20 ",Symbol()," ",Period(),"M - SELL "); // звуковой сигнал if(EnableSound) PlaySound(ExtSoundFileNameDn); if(EnableSendNotification) SendNotification("MA 8-20 EUR_H1 - SELL"); // push-уведомление if(EnableSendMail) SendMail("MA 8-20: ",Symbol()+" , "+Period()+" мин.- SELL!"); // email-уведомление } } return (0); } //+------------------------------------------------------------------+ 我已经删除了一些不必要的东西。我已经简化了一些事情 Rinat Kaibyshev 2017.06.22 20:47 #11526 Victor Nikolaev: 这或多或少是我所得到的。我删除了一些不必要的东西。简化了一些事情。非常感谢你。我会试一试的。 Rinat Kaibyshev 2017.06.23 12:19 #11527 Victor Nikolaev: 这或多或少是我得到的东西。我删除了一些不必要的东西。简化了一些事情。这是不幸的,但它不起作用。我在M5时间框架上试了一下,以便更快地检查它。该信号仅在条形图关闭时出现,而不是在当前条形图上的平均数被穿越时出现。在大型框架上测试。 xronx 2017.06.24 16:25 #11528 //+------------------------------------------------------------------+ class A { public: int propA; public: A(void) {propA = 15;}; ~A(void) {}; }; //+------------------------------------------------------------------+ class B: public A { public: B(void){}; ~B(void){}; }; //+------------------------------------------------------------------+ void OnStart() { B newObj; GetA(newObj); //--- //B newObjArray[3]; //GetA_Array(newObjArray); } //+------------------------------------------------------------------+ void GetA(A &obj) { Print(obj.propA); } //+------------------------------------------------------------------+ void GetA_Array(A &obj[]) { for(int i=0;i<ArraySize(obj);i++) Print(obj[i].propA); } //+------------------------------------------------------------------+如果我们取消对OnStart()中的其余几行的注释,我们会得到 "newObjArray - 参数转换不允许"。两个问题:为什么,以及如何解决这个问题? Victor Nikolaev 2017.06.26 08:23 #11529 Tornado: 这是不幸的,但它不起作用。在M5时间段尝试了一下,以便更快地检查。该信号仅在条形图关闭后出现,而不是在当前条形图上的平均数被穿越时出现。我已经在大的时间框架上测试了它。看来我们只是不了解对方。 KhuKhu 2017.06.26 13:59 #11530 朋友们好。如何使止损、盈利和追踪值显示为百分比而不是点。这个公式太杂乱了,根本不起作用StopLoss=NormalizeDouble(Bid-(Bid-TrailingStop)/100*TRAL_PERCENT,Digits)。我希望能有最简单的百分比形式。双倍止损=0.05。--------利润=出价-停损,以百分比为单位(这是一个混乱的例子,但只是为了清楚地说明问题)。谢谢你。 1...114611471148114911501151115211531154115511561157115811591160...1178 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
你好!我不能在metatrader4中授权mql5来订阅信号...怎么办?
写一个请求给servicedesk(在左边的资料中),并附上细节和屏幕截图。
猫头鹰应该在几对上耕作,最好是每买图的两只猫头鹰与自己分开。
就像现在这样,它可以开到无限大
int _OrdersTotal=OrdersTotal()。
for (int i=_OrdersTotal-1; i>=0; i--) {
如果(OrderSelect(i,SELECT_BY_POS)){
如果(OrderMagicNumber() == Magic){
如果(OrderSymbol() == Symbol(){
如果(OrderType() == OP_BUY){
}}}}}
如果(MaPrevious>MaPrevious1)
{
ticket=OrderSend(Symbol(,OP_BUY,Lots,Ask,3,Ask-StopLoss*Point ,Ask+TakeProfit*Point, "macd sample",Magic,0,Green);
如果(ticket>0)
{
如果(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))
Print("BUY订单打开:",OrderOpenPrice())。
}
否则
Print("Error opening BUY order : ",GetLastError())。
返回。
}
帮助谁可以
大家下午好!
我知道有可能在指标中实现信号输出。
a).当它出现在当前条形图上而不等待它关闭时。在这种情况下,在收盘后,信号可以被取消。
b).在出现信号的条形图收盘后。
我对变体a)感兴趣。如何在一个指标中实现警报,而不需要等待条形图的关闭?
我试图在指标代码的第39行将其作为参数选择来实现,但没有成功。如何正确操作?
extern int shift = 0; // 在哪个条形上考虑信号:0--在当前条形上;1--在封闭条形上。
如果能得到帮助,我将非常感激!
大家下午好!
我知道有可能在指标中实现信号输出。
a).当它出现在当前条形图上而不等待它关闭时。在这种情况下,在收盘后,信号可以被取消。
b).在出现信号的条形图收盘后。
我对变体a)感兴趣。如何在一个指标中实现警报,而不需要等待条形图的关闭?
我试图在指标代码的第39行将其作为参数选择来实现,但没有成功。如何正确操作?
extern int shift = 0; // 在哪个条形上考虑信号:0--在当前条形上;1--在封闭条形上。
我将非常感谢您的帮助!
我得到的信息大约是这样的
我已经删除了一些不必要的东西。我已经简化了一些事情
这或多或少是我所得到的。
我删除了一些不必要的东西。简化了一些事情。
非常感谢你。我会试一试的。
这或多或少是我得到的东西。
我删除了一些不必要的东西。简化了一些事情。
这是不幸的,但它不起作用。我在M5时间框架上试了一下,以便更快地检查它。该信号仅在条形图关闭时出现,而不是在当前条形图上的平均数被穿越时出现。在大型框架上测试。
如果我们取消对OnStart()中的其余几行的注释,我们会得到 "newObjArray - 参数转换不允许"。
两个问题:为什么,以及如何解决这个问题?
这是不幸的,但它不起作用。在M5时间段尝试了一下,以便更快地检查。该信号仅在条形图关闭后出现,而不是在当前条形图上的平均数被穿越时出现。我已经在大的时间框架上测试了它。
看来我们只是不了解对方。
朋友们好。
如何使止损、盈利和追踪值显示为百分比而不是点。
这个公式太杂乱了,根本不起作用
StopLoss=NormalizeDouble(Bid-(Bid-TrailingStop)/100*TRAL_PERCENT,Digits)。
我希望能有最简单的百分比形式。
双倍止损=0.05。
--------
利润=出价-停损,以百分比为单位(这是一个混乱的例子,但只是为了清楚地说明问题)。
谢谢你。