
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Поразительно, но мне пришла в голову точно такая же мысль и код я использую в точности такой же)))
Видимо потому, что есть вещи естественные по жизни.
И если не выдумывать (это в пику разработчикам ;) то мысли сходятся... сами собой...
Скажите как получить все цены(там где стрелочки на графике) индикатора Fractals через советник?
я делаю вот так:
Комент показывает цены с множеством цифр после запятой....1,79769313486231e+308
Тобишь тут нет значений у индикатора фрактал
А как мне получать все значения где есть стрелочки?Цитата из справки в разделе "Графические объекты" "Группа функций, предназначенных для работы с графическими объектами, относящимся к любому указанному графику. Эти функции нельзя использовать в индикаторах." К тому моменту, как я обратил внимание на данное ограничение, мной написано уже три индикатора и во всех прекрасно работают все функции(почти все-просто не всеми пользовался, что использовал работает) Вопрос! Что не так? 1) Я понял не правильно 2) В справке ошибка 3) Что то не сработало в коде 4) Пока работает, а в окончательном варианте не будет 5) Что-то еще
Графические функции включены временно, по многочисленым просьбам трудящихся.
Окончательное решение видимо пока не принято, потому и справка не редактируется в этой части.
Не было 1 день и перестал работать код (214 билд)
int Dl = HistoryDealsTotal();
i=0;
double Prof=0, Prof1=0;
Prof_Min = Prof_Max - Prof_Instr;
ResetLastError();
while(i < Dl)
{
ulong Tik_D = HistoryDealGetTicket(i);
if(HistoryDealSelect(Tik_D, 1000) == false)
{Print("Не удалось выбрать сделку с тикетом = ", Tik_D, "в OnInit() = ", _LastError); return;}
2009.11.03 13:59:33 R002 (USDCHF,M1) Не удалось выбрать сделку с тикетом = 80652 в OnTrade() = 4757
Сделка с тикетом 80652 точно есть (не умею скопировать). Что-то изменилось?
Куда то пропало меню форума, не могу вставить как код SRC и ссылки! Вот из справки ENUM_ARROW_ANCHORИдентификатор Описание ANCHOR_TOP Anchor on the top side ANCHOR_BOTTOM Anchor on the bottom side Понятно, что речь идет о "верх" "низ" но просьба доперевести.
Сделано
Не было 1 день и перестал работать код (214 билд)
int Dl = HistoryDealsTotal();
i=0;
double Prof=0, Prof1=0;
Prof_Min = Prof_Max - Prof_Instr;
ResetLastError();
while(i < Dl)
{
ulong Tik_D = HistoryDealGetTicket(i);
if(HistoryDealSelect(Tik_D, 1000) == false)
{Print("Не удалось выбрать сделку с тикетом = ", Tik_D, "в OnInit() = ", _LastError); return;}
2009.11.03 13:59:33 R002 (USDCHF,M1) Не удалось выбрать сделку с тикетом = 80652 в OnTrade() = 4757
Сделка с тикетом 80652 точно есть (не умею скопировать). Что-то изменилось?
Попробуйте предварительно вызвать HistorySelect().
input datetime Dat_Ot = D'2009.10.01'; // Дата ОТ
input datetime Dat_Do = D'2009.12.01'; // Дата ДО
ResetLastError();
if(HistorySelect(Dat_Ot, Dat_Do)); else Print("Ошибка получения истории сделок = ", _LastError);
int Dl = HistoryDealsTotal();
i=0;
double Prof=0, Prof1=0;
Prof_Min = Prof_Max - Prof_Instr;
ResetLastError();
while(i < Dl)
{
ulong Tik_D = HistoryDealGetTicket(i);
if(HistoryDealSelect(Tik_D, 1000) == false)
{Print("Не удалось выбрать сделку с тикетом = ", Tik_D, "в OnInit() = ", _LastError); return;}
2009.11.03 14:47:39 R002 (USDCHF,M1) Не удалось выбрать сделку с тикетом = 80869 в OnTrade() = 4757
Всё есть и было.
if(HistorySelect(Dat_Ot, Dat_Do)==false) Print("Ошибка получения истории сделок OnTrade = ", _LastError);
double Prof=0;
int Dl = HistoryDealsTotal(); Print("Dl = ", Dl);
if(Dl<=0) return;
ulong Tik_D = HistoryDealGetTicket(Dl-1); Print("Tik_D = ", Tik_D);
ResetLastError();
if(HistoryDealSelect(Tik_D, 1000) == false)
{Print("Не удалось выбрать сделку с тикетом = ", Tik_D, "в OnTrade() = ", _LastError); return;}
2009.11.03 14:57:32 R002 (USDCHF,M1) Не удалось выбрать сделку с тикетом = 80936 в OnTrade() = 4757
2009.11.03 14:57:31 R002 (USDCHF,M1) Tik_D = 80936
2009.11.03 14:57:31 R002 (USDCHF,M1) Dl = 93
input datetime Dat_Ot = D'2009.10.01'; // Дата ОТ
input datetime Dat_Do = D'2009.12.01'; // Дата ДО
ResetLastError();
if(HistorySelect(Dat_Ot, Dat_Do)); else Print("Ошибка получения истории сделок = ", _LastError);
int Dl = HistoryDealsTotal();
i=0;
double Prof=0, Prof1=0;
Prof_Min = Prof_Max - Prof_Instr;
ResetLastError();
while(i < Dl)
{
ulong Tik_D = HistoryDealGetTicket(i);
if(HistoryDealSelect(Tik_D, 1000) == false)
{Print("Не удалось выбрать сделку с тикетом = ", Tik_D, "в OnInit() = ", _LastError); return;}
2009.11.03 14:47:39 R002 (USDCHF,M1) Не удалось выбрать сделку с тикетом = 80869 в OnTrade() = 4757
Всё есть и было.
Попробуйте обратиться в техподдержку, код указывает на превышение таймаута. Кроме того, в случае неудачного результата функции HistoryDealSelect() можно вывести в лог все сделки для ручной проверки.