Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
int today=StrToTime("19:59");
int yesterday=StrToTime("19:59")-3600*24;
int twodaysbeforeyesterday=StrToTime("19:59")-3600*24*3;
так что
double closetwodaysbeforeyesterday=iClose(Symbol(),PERIOD_M1,iBarShift(Symbol(),PERIO D_M1,StrToTime("19:59")-3600*24*3));
Сначала определите функцию getMagic(), которая будет выдавать вам магические числа, и поместите ее в функцию ordersend (как параметр для установки магического числа).
Затем, помимо функции get magic, вы должны сделать следующее:
getMagic()
{
1) установите цикл for(int i = 1;i<21;i++) для проверки чисел от 1 до 20
2) затем сделайте еще один цикл (внутри первого for) для каждого числа i с циклом for от 0 до OrdersTotal, проверяя, нашли ли вы магическое число, равное i, если вы не нашли магическое число, значит оно свободно и вы можете использовать его как возвращаемое значение этой функции (getMagic) и передать его в функцию orderSend, иначе используйте ключевое слово contunue для перехода к другой проверке магического числа.
}Привет, Калензо,
Спасибо за ответ!
Если код правильный?
MagicNumber = 1000;
maxRepetitions = 20;
z = maxRepetitions;
magic = getMagic();
getMagic()
{
findmagic = MagicNumber+i;
for(int i=1;i<=z;i++)
{
for(int n=1;n<=openOrders;n++)
{
OrderSelect(n, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol()==Symbol())
{
if (OrderMagicNumber() != findmagic) continue;
magic = MagicNumber+i;
}
}
}
return(magic);
}
Спасибо и пожелания
derumuro
derumuro
Если я правильно понял ваш запрос, то это больше то, что вы ищете.
Вы должны изучить способ обмена переменными между функциями и глобальную область видимости, у вас будут большие проблемы, если вы не понимаете различий между локальной и глобальной областью видимости.
Вы должны определить, как справиться с ситуацией, когда все 20 заказов размещены. Вы хотите вернуть отрицательное число? чтобы программа знала, что больше заказы не принимаются. В вашем коде должна быть предусмотрена безопасность.
int MagicNumber = 1000;
int maxRepetitions = 20;
int magic = getMagic( MagicNumber, maxRepetitions );
int getMagic( int StartNumber, int Repeat ) {
// CN!{if an error or no open MagicNumbers are avaible it will return -1}:
int ReturnNumber = -1;
for( int i = 1; i <= Repeat; i ++ ) {
for( int n = 0; n <= OrdersTotal(); n ++ ) {
OrderSelect( n, SELECT_BY_POS, MODE_TRADES );
if( OrderSymbol() == Symbol() ) {
if( OrderMagicNumber() != StartNumber + i ) continue;
ReturnNumber = StartNumber + i;
}
}
}
return( ReturnNumber );
}
Привет, Калензо,
Спасибо за ответ!
Если код правильный ?
MagicNumber = 1000;
maxRepetitions = 20;
z = maxRepetitions;
magic = getMagic();
getMagic()
{
findmagic = MagicNumber+i;
for(int i=1;i<=z;i++)
{
for(int n=1;n<=openOrders;n++)
{
OrderSelect(n, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol()==Symbol())
{
if (OrderMagicNumber() != findmagic) continue;
magic = MagicNumber+i;
}
}
}
return(magic);
}
Спасибо и пожелания
дерумуроПривет, cockeyedcowboy,
спасибо за помощь!
Я не программист. Я пытаюсь изучить MQL4, но у меня есть 3 основные проблемы.
1. Я очень плохо понимаю английский язык.
2. Я не нашел хорошего руководства по MQL4.
3. Мне некому помочь.
Вопрос: Существует ли язык программирования, похожий на MQL4?
С уважением,
derumuro
int today=StrToTime("19:59");
int yesterday=StrToTime("19:59")-3600*24;
int twodaysbeforeyesterday=StrToTime("19:59")-3600*24*3;
так
double closetwodaysbeforeyesterday=iClose(Symbol(),PERIOD_M1,iBarShift(Symbol(),PERIO D_M1,StrToTime("19:59")-3600*24*3));Спасибо, Roger09
Программное определение рыночного исполнения
Кто-нибудь знает, есть ли способ программно определить, нужно ли открывать ордер с "рыночным исполнением" или разрешены ли стоплоссы / тейкпрофиты в первоначальном ордере?
C.
Если вы зайдете на сайт metaquotes.net, вы можете найти metatrader на вашем родном языке.
Привет, cockeyedcowboy,
Спасибо за помощь!
Я не программист. Я пытаюсь изучить MQL4, но у меня есть 3 основные проблемы.
1. Я очень плохо понимаю английский язык.
2. Я не нашел хорошего руководства по MQL4.
3. Мне некому помочь.
Вопрос: Существует ли язык программирования, похожий на MQL4?
С уважением,
дерумуроЗначение ATR в csv - Скрипт
Здравствуйте, у меня проблема. Мне нужно импортировать значение ATR из metatrader в csv файл.
К сожалению, я не знаю, как это сделать.
Пожалуйста, помогите мне написать скрипт.
Я пытался использовать FileWrite - MQL4 Documentation и iATR - MQL4 Documentation. Но у меня ничего не получилось...
C. Если вы зайдете на сайт metaquotes.net, вы можете найти metatrader на вашем родном языке.
Спасибо!
Я ищу хорошее руководство по MQL4.
С уважением
derumuro
Спасибо!
Я ищу хорошее руководство по MQL4.
С уважением,
derumuroТот, что на сайте, подходит
MetaQuotes Language 4 - MQL4