Строка на которую он ругается вот она
if (DropPrice == 0) return; ВОТ НА ЭТОЙ СТРОКЕ РУГАЕТСЯ!!!!
только русского текста там нет это я написал что бы можно было найти но видно не помогло
Перед последней скобкой return(0); имеется. Я вот думаю как посчитать сто третью строку, если я считать умею только до трёх???
Крутить, мышку ставить и смотреть в статусной строке.
Строка на которую он ругается вот она
if (DropPrice == 0) return; ВОТ НА ЭТОЙ СТРОКЕ РУГАЕТСЯ!!!!
только русского текста там нет это я написал что бы можно было найти но видно не помогло
Наврено функция типа int, bool, double (короче - не void), значит в return должно возвращаться значение: return(0);
Крутить, мышку ставить и смотреть в статусной строке.
А оно мне надо?))) Это такой намёк, если человеку что-то надо, то на мой взгляд, он должен обеспечить минимум напряга тем к кому он обращается за помощью.
Какое красивое число постов у тебя... 11111
А оно мне надо?))) Это такой намёк, если человеку что-то надо, то на мой взгляд, он должен обеспечить минимум напряга тем к кому он обращается за помощью.
Какое красивое число постов у тебя... 11111
Это да. Думал это правда вопрос по отсчет строки.
Вот вы и сломали мое красивое количество постов.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
function must return the value????
Привет всем как это исправить я просто не шарю в програмировании но когда компилирую выдает не как ошибку а как предупреждение вот код, здесь ссылаеться на 103 строку:
//+------------------------------------------------------------------+
//| bvnopen.mq4 |
//| Vitaliy N. Borinskiy |
//| http://junkabyss.com |
//| Version 0.39 |
//| License GPL v.2 |
//+------------------------------------------------------------------+
#property copyright "Vitaliy N. Borinskiy"
#property link "http://junkabyss.com"
#property show_inputs
#include <stderror.mqh>
#include <stdlib.mqh>
// Прекомпилированные входные значения
// Стартовый размер лота
extern double StartLot = 1;
// Количество ордеров
extern int OrdersNumber = 1;
// Уровень Stop Loss
extern int StopLoss = 0;
// Уровень Take Profit
extern int TakeProfit = 0;
// Расстоя
extern int Pips = 0;
// Уровень Stop Loss для
extern bool StopForEach = true;
// Коэфициент умножения
extern double Magnifier = 1;
// Покупка или продажа: 1 - покупка, -1 - продажа, по умолчанию 0 - определя
// Зависит от DnDLevel, если он 0 или 1, то покупка при бросании выше графика, если -1, то - ниже (подробнее ниже).
// Можно сделать 2 копии скрипта с прекомпилированными значения
extern int BuySell = 0;
// Комментарий
extern string UserComment = "";
// Следующие параметры не вынесены во внешние, так как переключать их каждый раз бессмысленно,
// но их можно поменя
// Определя
// При значении по умолчанию 0 - никакие уровни не устанавливаются
// Если график брошен выше цены, то происходит покупка, ниже - продажа.
// При значении 1 выставля
// При значении -1 выставля
// При этом направление определя
int DnDLevel = 0;
// Допустимое проскальзывание.
int Slippage = 2;
// Количество попыток, в случае ошибки.
int MaxTries = 3;
// Время
int SleepTime = 200;
// Звук вкл./выкл.
bool Sound = true;
// "Волшебный номер", иногда может быть полезно для
int Magic = NULL;
// Дальше ничего меня
//+------------------------------------------------------------------+
//| script program start function |
//+------------------------------------------------------------------+
int start() {
double OpenPrice, Lots, SL, TP, SLPrice;
bool Buy = false;
int Tries, Cmd, Dev, Check;
//----
double DropPrice = WindowPriceOnDropped();
datetime DropTime = WindowTimeOnDropped();
int DropBar = ArrayBsearch(Time, DropTime);
// Check Global Variables
if (GlobalVariableCheck("bvnopen.OrdersNumber"))
OrdersNumber = GlobalVariableGet("bvnopen.OrdersNumber");
if (GlobalVariableCheck(StringConcatenate("bvnopen.", Symbol(), ".OrdersNumber")))
OrdersNumber = GlobalVariableGet(StringConcatenate("bvnopen.", Symbol(), ".OrdersNumber"));
if (GlobalVariableCheck("bvnopen.StartLot"))
StartLot = GlobalVariableGet("bvnopen.StartLot");
if (GlobalVariableCheck(StringConcatenate("bvnopen.", Symbol(), ".StartLot")))
StartLot = GlobalVariableGet(StringConcatenate("bvnopen.", Symbol(), ".StartLot"));
if (GlobalVariableCheck(StringConcatenate("bvnopen.", Symbol(), ".LotMagnifier")))
StartLot = StartLot * GlobalVariableGet(StringConcatenate("bvnopen.", Symbol(), ".LotMagnifier"));
else if (GlobalVariableCheck("bvnopen.LotMagnifier"))
StartLot = StartLot * GlobalVariableGet("bvnopen.LotMagnifier");
if (GlobalVariableCheck("bvnopen.TakeProfit"))
TakeProfit = GlobalVariableGet("bvnopen.TakeProfit");
if (GlobalVariableCheck(StringConcatenate("bvnopen.", Symbol(), ".TakeProfit")))
TakeProfit = GlobalVariableGet(StringConcatenate("bvnopen.", Symbol(), ".TakeProfit"));
if (GlobalVariableCheck("bvnopen.StopLoss"))
StopLoss = GlobalVariableGet("bvnopen.StopLoss");
if (GlobalVariableCheck(StringConcatenate("bvnopen.", Symbol(), ".StopLoss")))
StopLoss = GlobalVariableGet(StringConcatenate("bvnopen.", Symbol(), ".StopLoss"));
if (GlobalVariableCheck("bvnopen.DnDLevel"))
DnDLevel = GlobalVariableGet("bvnopen.DnDLevel");
if (GlobalVariableCheck(StringConcatenate("bvnopen.", Symbol(), ".DnDLevel")))
DnDLevel = GlobalVariableGet(StringConcatenate("bvnopen.", Symbol(), ".DnDLevel"));
if (GlobalVariableCheck("bvnopen.Sound"))
Sound = GlobalVariableGet("bvnopen.Sound");
if (GlobalVariableCheck(StringConcatenate("bvnopen.", Symbol(), ".Sound")))
Sound = GlobalVariableGet(StringConcatenate("bvnopen.", Symbol(), ".Sound"));
// Main Algorythm
if (BuySell == 0) {
if (DropPrice == 0) return; ВОТ НА ЭТОЙ СТРОКЕ РУГАЕТСЯ!!!!
if (DropPrice > Close[DropBar]) Buy = true;
if (DnDLevel == -1) Buy = !Buy;
} else if (BuySell > 0) Buy = true;
if (DnDLevel > 0 && TakeProfit == 0) TakeProfit = MathAbs(DropPrice - Bid) / Point;
if (DnDLevel < 0 && StopLoss == 0) StopLoss = MathAbs(DropPrice - Bid) / Point;
Print(OrdersNumber);
for (int i = 0; i < OrdersNumber; i++) {
Dev = i * Pips;
Lots = StartLot * MathPow(Magnifier, i);
if (Buy) {
if (Dev == 0) Cmd = OP_BUY;
else Cmd = OP_BUYLIMIT;
OpenPrice = NormalizeDouble(Ask - Dev * Point, Digits); // Buy
if (StopForEach) SLPrice = OpenPrice;
else SLPrice = Ask;
if (StopLoss != 0) SL = NormalizeDouble(SLPrice - StopLoss * Point, Digits);
else SL = 0;
if (TakeProfit != 0) TP = NormalizeDouble(OpenPrice + TakeProfit * Point, Digits);
else TP = 0;
} else {
if (Dev == 0) Cmd = OP_SELL;
else Cmd = OP_SELLLIMIT;
OpenPrice = NormalizeDouble(Bid + Dev * Point, Digits); // Sell
if (StopForEach) SLPrice = OpenPrice;
else SLPrice = Bid;
if (StopLoss != 0) SL = NormalizeDouble(SLPrice + StopLoss * Point, Digits);
else SL = 0;
if (TakeProfit != 0) TP = NormalizeDouble(OpenPrice - TakeProfit * Point, Digits);
else TP = 0;
}
Tries = MaxTries;
//Print(StringConcatenate(Symbol(), ",", Cmd, ",", Lots, ",", OpenPrice, ",", Slippage, ",", SL, ",", TP, ",", UserComment, ",", Magic));
while (Tries > 0) {
if (!OrderSend(Symbol(), Cmd, Lots, OpenPrice, Slippage, SL, TP, UserComment, Magic)) {
Check = GetLastError();
Print(StringConcatenate("Error: ", Check, "! ", ErrorDescription(Check)));
Sleep(SleepTime);
Tries --;
} else Tries = 0;
}
}
if (Sound) PlaySound("ok.wav");
//----
return(0);
}
//+------------------------------------------------------------------+