Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
новичок...
прежде всего поздравляю всех с новым годом!
затем спасибо за все знания, которыми вы делитесь на этом форуме.
Я подхожу к mql4, я не кодер.
Буду признателен за небольшую поддержку в написании очень простой стратегии:
длинные входы:
(ask-bid) <= Z_pips /* проверка спреда */
и
(bollinger_up-bollinger_down) <= K_pips /* проверка волатильности */
и
ask < (bollinger_down + X_pips) /* проверка цены */
и
ma_Qperiods >= ma_Wperiods /* проверка тренда */
выходы:
Трейлинг SL = 15 пипсов
Есть ли у кого-нибудь время, чтобы дать мне шанс?
Заранее спасибо
neeverr
нужна помощь с моим индикатором nr7
здравствуйте
Я разрабатываю индикатор для nr7.
алгоритм следующий
-вычисляем диапазон и сохраняем его в массиве
- если текущий диапазон <= 7 последних диапазонов, то текущий бар - nr7.
но индикатор, похоже, отмечает каждый бар как nr7. не знаю, где я допустил ошибку.
скриншот здесь
2010-01-18_0531
советник по продвинутому сару
Привет друзья,
Мне нужна ваша помощь, если кто-то из вас может помочь мне модифицировать советник, который я получил из другой темы, но, к сожалению, у меня нет его mql файла.
Из оригинальной логики этого советника, я хочу сделать небольшую модификацию, как показано ниже:
- Этот советник работает только на 4 знаках, помогите улучшить его, чтобы он мог работать и на 5 знаках.
- Этот советник работает по общей системе мартингейла, мне нужно добавить еще 2X режим работы,
1. Если советник открывает ордер на последней сделке, и они попадают в TP, то советник начнет новый цикл и откроет сделку в том же порядке, что и последний ордер. Пример: если последняя сделка - ордер на покупку, и они достигли TP, то советник будет продолжать открывать сделку на покупку, пока не достигнет SL, и советник изменит ордер на противоположный ордер на продажу. То же самое с ордером на продажу, пока они получают прибыль по ордеру на продажу, то они продолжают открывать ордер на продажу с новым циклом, пока не достигнут SL и направление не изменится на ордер на покупку.
2. Работа во втором режиме. Советник работает по логике последовательности buy-sell-buy-sell-buy, этот режим предназначен для рынка, находящегося в диапазоне без тренда.
буду благодарен за любую помощь.
спасибо
йоха
есть идеи, почему этот советник не размещает ордера?
Привет, ребята, прошло много времени с тех пор, как я вернулся в эту игру .... в любом случае, просто начинаю освежать информацию о mql....lot изменилось здесь.
В основном я хочу выставлять отложенные ордера на покупку и продажу на расстоянии 10 пунктов от открытия бара с обеих сторон. Тейкпрофит находится на расстоянии 15 пунктов от отложенных ордеров.
Проблема в том, что ордера никогда не выставляются...
int pos = Bars - counted_bars + 1;
if (counted_bars == 0) pos = Bars - 10;
if (counted_bars>0) counted_bars--;
double currentPrice = iClose("EURUSD",PERIOD_M1,0);
while(pos>0)
{
//Putting Pending LongOrder
Print("Long...");
OrderSend("EURUSD",OP_BUYLIMIT,1,Open+10*Point,3,0,Open+25*Point,"Pending Long Order", 888, 0, Green);
Print("Short...");
//Putting Pending ShortOrder
OrderSend("EURUSD",OP_SELLSTOP,1,Open-10*Point,3,0,Open-25*Point,"Pending Short Order", 999, 0, Red);
pos--;
}Я не совсем понимаю, какое отношение подсчитанные бары имеют к советнику? Разве он не предназначен для использования в индикаторах?
Я думаю, если вы уберете эту часть, то все будет в порядке.
переменная времени
Здравствуйте,
Я хочу записать фактические данные и время.
extern int starthour = 8;
extern int startminute = 0;
[/CODE]
in my variable
[CODE]
datetime starttime= 0;
Как я могу написать это?
Как я могу написать это:
starttime = Дата дня + starthour + startminute;
Не совсем понимаю, о чем вы спрашиваете, но предположу, что вы пытаетесь увеличить дату на количество часов и минут. Если вы посмотрите файл справки для функции TimeCurrent(), то увидите, что она возвращает время в секундах. Логически можно сделать вывод, что для добавления минут нужно умножить на 60, а для часов - на 3600 (60*60).
Таким образом, у вас получится что-то вроде...
TimeCurrent()+(starthour*3600)+(startmin*60);
Просто замените TimeCurrent() на то время, которое вы обозначили как 'startdate'.
Lux
Привет,
Я хочу написать фактические данные и время.
extern int starthour = 8;
extern int startminute = 0;
[/CODE]
in my variable
[CODE]
datetime starttime= 0;
Как я могу написать это?
Как я могу это написать:
starttime = Дата дня + starthour + startminute;Используйте функцию StrToTime. Если вы не будете передавать этой функции день, а только час и минуту, она будет использовать текущий день. Например:
datetime startTime = StrToTime( StartHour+": "+ StartMinute);
Где StartHour и StartMinute являются строками:
string StartHour = 8;
string StartMinute = 0;
Большое спасибо!!!
У меня есть еще один вопрос.
Как я могу закодировать его, если я хочу, чтобы мой советник покупал или продавал только по цене закрытия свечи?
Я думал, что могу написать
но это не работает.
Большое спасибо!!!
У меня есть еще один вопрос.
Как я могу закодировать его, если я хочу, чтобы мой советник покупал или продавал только по цене закрытия свечи?
Я думал, что могу написать
Вам нужно определить переменную, допустим, это будет:
int barsNumber = 0;
в глобальной секции (например, прямо перед функцией init)
и затем в функции start, где у вас есть ваша часть с функцией sendOrder, вам нужно проверить это условие
if(Bars>barsNumber)
и если оно истинно, то установить нашу переменную barsNumber в Bars
barsNumber = Bars;
Таким образом, все будет выглядеть следующим образом:
#некоторые свойства
int barsNumber = 0;
int init()
{
}
int deinint()
{
}
int start()
{
if(Bars>barsNumber)
{
SendOrder(...);
barsNumber = Bars;
}
}