Хотел скидывать фиксированное число значений тайм серии в массив, и дальше уже работать с этим массивом. Я так понял для этого либо записывать циклом в массив через
iOpen
например. Либо копировать и вставлять кусок истории в массив через CopyOpen например. Я правильно понял?
Написал скрипт, который заполняет массив значениями тайм серии.
Если брать данные символа текущего графика, то всё нормально
А как указать другой символ инструмента?
Так выдаёт ошибку 'Symbol' - wrong parameters count
Читайте внимательнее справку по используемым функциям.
Функция Symbol() возвращает строку с именем текущего символа. Если нужен другой, то указываем его или в виде строкового литерала, либо создаём строковую переменную с нужным названием и её передаём в функцию iOpen().
Читайте внимательнее справку по используемым функциям.
Функция Symbol() возвращает строку с именем текущего символа. Если нужен другой, то указываем его или в виде строкового литерала, либо создаём строковую переменную с нужным названием и её передаём в функцию iOpen().
Спасибо. Справку читал, но примера с указанием другого символа не нашёл. Спасибо. Ваш бы пример прям в справку ниже и засунуть.
Всем привет. Помогите. Написал функцию подсчета прибыли закрытых ордеров. Не работает в тестере. Подскажите пожалуйста в чем проблема и куда смотреть нужно.
double History_Profit(datetime startTime)
{
double h_profit = 0.0;
ulong ticket;
HistorySelect(startTime, TimeCurrent()); // Выбор истории сделок в указанном диапазонеint total_h = HistoryDealsTotal(); // Общее количество сделок в истории// Цикл проходит по всем сделкам в историиfor(int i = total_h - 1; i >= 0; i--)
{
ticket = HistoryDealGetTicket(i); // Получение тикета сделкиif(ticket > 0)
{
// Получение символа, магического числа и прибыли сделкиstring dealSymbol = HistoryDealGetString(ticket, DEAL_SYMBOL);
long dealMagic = (long)HistoryDealGetInteger(ticket, DEAL_MAGIC);
double dealProfit = HistoryDealGetDouble(ticket, DEAL_PROFIT);
double dealCommission = HistoryDealGetDouble(ticket, DEAL_COMMISSION);
double dealSwap = HistoryDealGetDouble(ticket, DEAL_SWAP);
// Фильтрация сделок по символу и магическому числуif(dealSymbol == _Symbol && dealMagic == Magic)
{
// Суммирование прибыли, комиссии и свопа
h_profit += dealProfit + dealCommission + dealSwap;
}
}
}
return (h_profit); // Возврат общей прибыли
}
Robert Sadamon #: Всем привет. Помогите. Написал функцию подсчета прибыли закрытых ордеров. Не работает в тестере. Подскажите пожалуйста в чем проблема и куда смотреть нужно.
Привет. А переменная Magic где своё значение получает? Она глобальная?
Robert Sadamon #: Всем привет. Помогите. Написал функцию подсчета прибыли закрытых ордеров. Не работает в тестере. Подскажите пожалуйста в чем проблема и куда смотреть нужно.
У вас всё не так, к тому-же, ордер не может быть закрыт/открыт, он может быть установлен/удалён.
Написал скрипт, который заполняет массив значениями тайм серии.
Если брать данные символа текущего графика, то всё нормально
А как указать другой символ инструмента?
Так выдаёт ошибку 'Symbol' - wrong parameters count
Хотел скидывать фиксированное число значений тайм серии в массив, и дальше уже работать с этим массивом. Я так понял для этого либо записывать циклом в массив через
iOpenнапример. Либо копировать и вставлять кусок истории в массив через CopyOpen например. Я правильно понял?
Написал скрипт, который заполняет массив значениями тайм серии.
Если брать данные символа текущего графика, то всё нормально
А как указать другой символ инструмента?
Так выдаёт ошибку 'Symbol' - wrong parameters count
Читайте внимательнее справку по используемым функциям.
Функция Symbol() возвращает строку с именем текущего символа. Если нужен другой, то указываем его или в виде строкового литерала, либо создаём строковую переменную с нужным названием и её передаём в функцию iOpen().
Читайте внимательнее справку по используемым функциям.
Функция Symbol() возвращает строку с именем текущего символа. Если нужен другой, то указываем его или в виде строкового литерала, либо создаём строковую переменную с нужным названием и её передаём в функцию iOpen().
Спасибо. Справку читал, но примера с указанием другого символа не нашёл. Спасибо. Ваш бы пример прям в справку ниже и засунуть.
Все уже почти готово, код есть частично, идея как сделать есть, а вот на реализацию ума не хватает, помогите
Всем привет. Помогите. Написал функцию подсчета прибыли закрытых ордеров. Не работает в тестере. Подскажите пожалуйста в чем проблема и куда смотреть нужно.
Привет. А переменная Magic где своё значение получает? Она глобальная?
Конечно. Она во внешних переменных.
Всем привет. Помогите. Написал функцию подсчета прибыли закрытых ордеров. Не работает в тестере. Подскажите пожалуйста в чем проблема и куда смотреть нужно.
У вас всё не так, к тому-же, ордер не может быть закрыт/открыт, он может быть установлен/удалён.
Закрыта может быть позиция.