Маркер ВРЕМЕНИ - на основе кода сделать библиотеку DLL

Индикаторы, написанные участниками форума. Делимся своими наработками.
Ответить
Сообщение
Автор
Alexey
Сообщения: 41
Зарегистрирован: Чт окт 14, 2010 8:25 am

Маркер ВРЕМЕНИ - на основе кода сделать библиотеку DLL

#1 Сообщение Alexey » Пн ноя 15, 2010 6:52 am

Просьба скомпиллировать код ниже - где собственно код индикатора. Первые посты смысла уже не имеют, никто не помог, сам написал.

----------------------------------------


Ребята, а, пожалуйста, сделайте кто-нибудь малюсенький полезный индикатор - ВРЕМЯ. Это без всяких формул! А то я не умею на этом языке сочинять пока. Да и Вам поможет в работе.

Суть в том, чтобы в нем можно было устанавливать 4 момента времени по выбору (с точностью до минут) - просто 4 параметра. И чтобы, когда индикатор накидываешь на график, сразу без всякий формул рисовалось просто 4 вертикальных палочки - на моменты этого времени. Нет палочки = 0, есть палочка = 1. Такая формула все-таки. :)

А то очень сложно искать, когда же эти 6 часов начинаются и, например, 17 заканчиваются.. А так бы плюхнул его туда, указал бы 5:45 красную, 6:00 зеленую, 16:45 синюю, 17:00 черную - и был бы всегда предупрежден и в курсе, глядя даже от соседней стены, начался уже рабочий день на экране или нет.

СПАСИБО!
Последний раз редактировалось Alexey Сб ноя 27, 2010 6:15 pm, всего редактировалось 1 раз.

Алексей
Сообщения: 50
Зарегистрирован: Вс окт 21, 2007 5:22 pm

#2 Сообщение Алексей » Пн ноя 15, 2010 4:51 pm

я делал подобный индикатор. показывает 2 рабочих периода, выделяя мин и макс цены в каждом из периодов.
По вопросам приобретения обращайтесь: Stonev@yandex.ru
Вложения
screen.png
(28.36 КБ) 4108 скачиваний

Alexey
Сообщения: 41
Зарегистрирован: Чт окт 14, 2010 8:25 am

#3 Сообщение Alexey » Пт ноя 19, 2010 4:09 am

Спасибо, Алексей, платить за эту безделицу в мои планы не входит. Если мы - российские мужики и мужики других уважаемых стран - начнем друг другу на улицах продавать возможность прикурить, мир постигнет долгожданный апокалипсис. :)

Граждане-товарищи, неужели никто, ну, совершенно никто!.. не понимает ценности и простоты этого чудесного индикатора времени? :idea: Вам, мудрым профессионалам и отличным специалистам, 30 секунд дел - и Вас встретит у порога с цветами и хорошим бордо великая нескончаемая слава, бесконечная благодать и искренняя благодарность миллионов! :D

4 момента времени, по ним 4 вертикальных черточки - и индикатор готов.... Кому надо, вот это.. ответный тост, в общем, для Румус2 дать такой, посмотрите, как удобно - хоть на цену, хоть отдельно.. у меня, причем, еще и закрасить ночь можно, и зимнее летнее время учтено зачем-то. Красотища! ) Наносить и красить в виде гистограмки все линии, кроме 0.
Вложения
time.jpg
(62.19 КБ) 14750 скачиваний
!_Time.rar
(734 байт) 876 скачиваний

Алексей
Сообщения: 50
Зарегистрирован: Вс окт 21, 2007 5:22 pm

#4 Сообщение Алексей » Пт ноя 19, 2010 4:20 am

Должен сказать, уважаемый тёзка, что вы первый, кто пришел на форекс за цветами, за хорошим бордо, за благодатью и благодарностью миллионов :)
остальные просто хотят на этом заработать ;)

Alexey
Сообщения: 41
Зарегистрирован: Чт окт 14, 2010 8:25 am

#5 Сообщение Alexey » Пт ноя 26, 2010 12:47 pm

Возможность заработать, уважаемый Алексей, я совершенно не исключаю и тольтко приветствую, просто на мой взгляд, у коммерции в жизни должны быть пределы. Зарабатывайте как можно больше. :)

А вообще считаю, что мог бы и саппорт ForexTester.ru отозваться - Вам дел две-три минуты. Само собой, вы совершенно не обязаны, потому что при продаже не декларировали этого сервиса, и в этом вы правы. Но с другой стороны, разве не вам хочется привлечь внимание людей к уровню сервиса, не вам ли исходя из маркетинговых задач нужно показывать людям, насколько у вас гибкая и понятная программа и так далее. Если сами авторы не могут накидать индикатор из 4 палочек, если никто из форумчан этого не может, и даже браться не хочет, хотя многие умеют, кто же поверит, что программа интуитивно понятная, а язык доступный. Я уже с трудом верю. Но придется попробовать изучить.

Если напишу, в общем, поделюсь со всеми БЕСПЛАТНО, потому что без этой штуки программа тяжелая - временные оси плохо организованы и время трудно отслеживать по точному значению. Трепещите, коммерсанты, иду на Вы.

FT Support
Сообщения: 329
Зарегистрирован: Сб июл 11, 2009 3:59 pm

#6 Сообщение FT Support » Пт ноя 26, 2010 1:57 pm

Уважаемый Алексей,

Да, цена вопроса для нас это несколько часов рабочего времени чтобы сделать и проверить этот индикатор.

НО мы не оказываем такого сервиса - писать индикаторы на заказ. Представьте что будет если мы будем писать индикаторы по каждому запросу пользователей, тогда у нас не будет никакого времени на стратегическое развитие программы. У нас есть довольно длинная очередь функциональности, которая должна быть добавлена в программу и мы не можем от неё отвлекаться, иначе все планы и сроки будут нарушены.

Тем не менее мы поставим этот индикатор в очередь и возможно добавим его в следующее обновление, но пока не могу точно сказать когда это будет сделано.

Alexey
Сообщения: 41
Зарегистрирован: Чт окт 14, 2010 8:25 am

#7 Сообщение Alexey » Пт ноя 26, 2010 6:18 pm

Уважаемые друзья,

Я сам написал код этого индикатора, опираясь на примеры из хелпа.

Наверняка я сделал какую-то ошибку. Кроме того, я не знаю, есть ли такой оператор как minute(), хотя hour() нашел и использовал. Да, еще я не знаю, как рисовать палочки не в виде галки "0-1-0", а в виде гистограммы.

Может быть, кто-то сможет проверить и скомпиллировать этот код и сказать, какие ошибки вылезают? У меня нет дельфи, а в жизни ее не видел никогда, и вообще сегодня только понял, что такое dll. А пиратскую покупать не хочу что-то.

Если у кого получится, и случайно индикатор заработает, вы прицепите в эту ветку dll, пожалуйста. Будет у нас с вами общая слава. А если не заработает, покритикуйте, плиз, что там не так.

Спасибо.

--------

library TimeToTrade;
//
uses
// использовать интерфейсный модуль
graphics, IndicatorInterfaceUnit;
//
var
// внешние параметры
sh: integer;
sm: integer;
eh: integer;
em: integer;
//
// индексные буферы и переменные
StartTime: TIndexBuffer;
EndTime: TIndexBuffer;
RestTime: TIndexBuffer;
//
//------------------------------
// Инициализация
//------------------------------
procedure Init; stdcall;
begin
// Назначение параметров
IndicatorShortName('Time');
SetOutputWindow(ow_ChartWindow);
// зарегистрировать внешние параметры
AddSeparator('Start');
RegOption('StartHour', ot_Integer, sh);
RegOption('StartMin', ot_Integer, sh);
AddSeparator('End');
RegOption('EndHour', ot_Integer, eh);
RegOption('EndMin', ot_Integer, em);
SetOptionRange('StartHour', 0,24);
SetOptionRange('StartMin', 0,60);
SetOptionRange('EndHour', 0,24);
SetOptionRange('EndMin', 0,60);
sh:=6;
sm:=5;
eh:=17;
eh:=5;
//
// Создание индексного буфера
IndicatorBuffers(3);
StartTime:= CreateIndexBuffer;
EndTime:= CreateIndexBuffer;
RestTime:= CreateIndexBuffer;
SetIndexBuffer(1,StartTime);
SetIndexBuffer(2,EndTime);
SetIndexBuffer(3,RestTime);
SetIndexStyle(1,0,psSolid,1,Red);
SetIndexStyle(2,0,psSolid,1,Green);
SetIndexStyle(3,0,psSolid,1,Grey);
end;
//
//-----------------------------
// Расчет одного бара
//----------------------------
procedure Calculate(index: integer); stdcall;
var
i: integer;
begin
for i:=0 to index do
begin
if Hour(Time(0))=sh and Minute(Time(0))=sm then StartTime:=1; else StartTime:=0;
if Hour(Time(0))=eh and Minute(Time(0))=em then EndTime:=1; else EndTime:=0;
if (Hour(Time(0))<=sh and Minute(Time(0))<sm) or (Hour(Time(0))>=eh and Minute(Time(0))>em) then RestTime:=1; else RestTime:=0;
end;
//
exports
// данные процедуры должны быть назначены как внешние
Init, Done, Calculate;
end.

FT Support
Сообщения: 329
Зарегистрирован: Сб июл 11, 2009 3:59 pm

#8 Сообщение FT Support » Ср дек 01, 2010 10:06 pm

Здравствуйте, Алексей!

Хорошие новости, индикатор сделан и прикреплён к этой ветке.

С помощью этого индикатора можно отмечать на графике заданные периоды времени. Выделение периода достигается другим цветом фона.
Следует заметить, что любые объекты, попадающие на изменённый фон, будут выделены на нём с помощью инверсии (см рисунок).

Настраивается индикатор очень просто: нужно выбрать начальный час, конечный час и цвет заполнения.

Если необходимо выделить 2 или больше периодов времени на графике, то можно прикрепить к графику 2 или больше экземпляра этого индикатора.

Исходный код индикатора прилагается.
Вложения
WorkingTime.png
(33.17 КБ) 14640 скачиваний
WorkTime.zip
(62.74 КБ) 971 скачивание

Alexey
Сообщения: 41
Зарегистрирован: Чт окт 14, 2010 8:25 am

#9 Сообщение Alexey » Сб дек 04, 2010 2:02 am

Спасибо, уважаемый FT Support.

Я тоже сам его уже сделал в том виде, в котором мне было нужно и выложил его для публики здесь: http://www.forextester.ru/forum/viewtopic.php?t=1126 .

Ваш индикатор тоже хорош, и чтобы с ним было совсем комфортно работать, я бы красил и инвертировал не рабочее время, а нерабочее. Люди обычно настраивают экран по любви к цвету, и именно рабочее время потом рассматривают глазами со всей любовью.

Почему-то не могу найти своего поста с предложением о сделке. Забыл, куда я его поместил. Там я предлагал меняться "комплект кодов и инструкций на мнение о кое-чем", причем обмен был актуален, если я не успею сделать индикатор сам до появления комплекта. Хотя я и сваял себе индикатор сам до того, как Вы предоставили те материалы, которые я просил, все равно, если они появятся в полном объеме, я напишу вам мысли. Все-таки пошли навстречу массам ручных трейдеров. А полный объем, и в том числе, инструкция на человеческом языке нужны для того, чтобы народ понимал, как все это делать, потому что хелп этот простому человеку не понять. Я только с пятидесятого захода понял, что внутренние функции и операторы FT - это по сути кусок дельфи в закодированной форме. Поэтому меняться готов, но на комплект материалов с исходными кодами, dll и качественными инструкциями для этого индикатора, а также для индикатора с указателем времени, я сие озвучивал.

Теперь появляться тут буду раз в пару недель, не чаще, наверное. Так что где-то во второй половине декабря зайду на форум. Если бог даст - поменяемся.

Спасибо команде FT за понимание и попытку сделать шаг навстречу людям, работающим с ручным тестом.

Ответить