![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Как мне написать iCustom вход для советника. Имя индикатора - CycleTarget.
Вот переменные индикатора:
extern int PriceActionFilter=1;
extern int Length=3;
extern int MajorCycleStrength=4;
extern bool UseCycleFilter=false;
extern int UseFilterSMAorRSI=1;
extern int FilterStrengthSMA=12;
extern int FilterStrengthRSI=21;
a=iCustom(NULL,0,????????????,0,0); Что использовать для заполнения ????
Запутался???
ДэйвСпасибо за помощь In10tion
Я не пытаюсь быть расплывчатым.
Я вернусь, когда буду знать, что хочу сказать.
Еще раз спасибо
Jbear
помогите пожалуйста
где и как я могу добавить код, чтобы я мог добавить текст в колонку "комментарий" в терминале.
пример - я хочу добавить текстовый комментарий "Ордер закрыт по условию типа 9c".
также, где я могу поместить Print log "Close by condition Type 9c".
спасибо
//+------------------------------------------------------------------+
//| Close Condition Type 9c
//| CHECK ACCOUNT HISTORY BALANCE then close biggest price different
//+------------------------------------------------------------------+
void CheckCloseConditionType9c()
{
int ticket1;
double max_dist;
for (;;)
{
ticket1 = -1;
int cnt = OrdersTotal();
for (int i=0; i < cnt; i++)
{
if (!OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) continue;
if (OrderSymbol() != Symbol()) continue;
if (OrderMagicNumber() != Magic) continue;
int type = OrderType();
if ((type == OP_BUY || type == OP_SELL) == false) continue;
RefreshRates();
if (ticket1 == -1 || MathAbs(Bid - OrderOpenPrice()) > max_dist)
{
ticket1 = OrderTicket();
max_dist = MathAbs(Bid - OrderOpenPrice());
}
}
if (ticket1 == -1) break;
//-----
double today_hist_profit = GetTodayProfit(MODE_HISTORY);
if (today_hist_profit <= Profit2ExitTodayBalance) break;
if (OrderSelect(ticket1, SELECT_BY_TICKET))
{
double lot = PartialCloseLot;
if (lot > OrderLots()) lot = OrderLots();
for (i=0; i < RepeatN; i++)
{
RefreshRates();
bool res = OrderClose(OrderTicket(), lot, OrderClosePrice(), Slippage, clClose);
if (res) break;
}
}
}
}Привет JBear, Просто не забудьте нажать на "Запомнить меня" в каждом браузере (Firefox, Opera, Explorer, Safari...) и не ограничивайте куки.
Спасибо Linuxser.
Готово
понял... спасибо
Пакетный заказ?
Может ли кто-нибудь помочь мне составить "пакетный заказ"? Я хотел бы иметь что-то, что позволит мне вводить две отдельные позиции одним нажатием кнопки. Обычно я торгую в хеджированных позициях. У меня есть несколько разных пар, которыми я торгую в разное время. Все, что я хотел бы иметь, это советник, который в момент, когда я включаю его, будет (например) вводить меня в длинную позицию на 1 лот по EURUSD и короткую на 1 лот по GBPUSD. Может ли кто-нибудь помочь мне с этим кодом? Было бы гораздо приятнее просто нажать одну кнопку, а не открывать один график, нажимать новый ордер, нажимать buy, а потом бежать открывать следующий график, нажимать новый ордер и продавать.
Спасибо,
EZ
пакетный заказ
Привет,
Я не кодер, но думаю, если бы я хотел сделать это, я бы посмотрел на это немного по-другому. Есть один советник для размещения одного ордера, покупки или продажи, который вы размещаете на графиках, затем, когда вы включаете советник в metatrader, он будет выполнять советники и размещать ордера на основе графиков, на которых вы разместили советник.
Таким образом, у вас есть несколько мгновенных ордеров, размещенных на графиках нескольких валют.
Проблема в том, чтобы решить, что вы хотите, купить или продать, но это может помочь вам, пока не появится что-то лучшее.
PG
и или
привет, ребята
У меня есть вопрос... как мне изменить следующее;
extern double MaxLot = 1.50;
double max_lot = GetMaxLot(OP_BUY, OP_SELL);
if (max_lot >= MaxLot) lot = CalcHedgeLot(order_type;)
(order_type)]: ", lot);
if (lot == -1) return (lot);
lot = NormalizeDouble(lot, LotPrec);
if (lot > MaxLot) lot = MaxLot;
if (lot < MinLot) lot = MinLot;
return (lot);
}
вышеописанная проверка для OP_BUY и OP_SELL
вопрос: как мне изменить это на любой OP_BUY ИЛИ любой OP_SELL
спасибо
Может ли кто-нибудь подсказать мне код MQL4 для подсчета только видимых баров?
Кажется, я помню, что некоторое время назад кто-то опубликовал код для этого, но я не могу найти его нигде при поиске, так как я немного затрудняюсь, что именно искать. Навскидку я припоминаю, что это было что-то вроде ...
.... int counted_bars = window() или int window() = Bars-window().
Но опять же, старое серое вещество уже не то, что раньше...
Кто-нибудь может подсказать, какой код на MQL4 для подсчета только видимых баров?
Кажется, я помню, что некоторое время назад кто-то опубликовал код для этого, но я не могу найти его нигде, когда ищу, поскольку я немного затрудняюсь, что именно искать. Навскидку я припоминаю, что это было что-то вроде ...
.... int counted_bars = window() или int window() = Bars-window().
Но опять же, старое серое вещество уже не то, что раньше...Это то, что вы ищете?
-----------
int bars_count=WindowBarsPerChart();
int bar=WindowFirstVisibleBar();
-----------
Goen