Автор |
Сообщение |
Caravancheg
Зарегистрирован: 02.08.2008
Сообщения: 46
|
Поделитесь секретом, как результат тестера отправить на мыло?
Сейчас я запускаю на дневки скриптик, который выдает по результатм прошедшего дня несколько наиболее интересных акций для ручного анализа.
В часности я поставил такую строчку:
AlertIf( Buy, "EMAIL", "Buy "+Name()+" "+Hour()+":"+Minute(), 2, 1 );
Однакона почту призрдит не совсем то, что хотелось бы:
Тема: Alert: Sell (2) BMS on 06.01.2009
Текст: Buy BMS 0:0
Вопросы:
1) Как вывести дату/время/цену предоплагаемого совершения сделки?
Очевидно что hour() мне ничего не дает.
Вообще-то мне хочется как минимум последний бар (я в алерте и ставлю последним параметром 1). Но вдруг захочется пару?
Если буду более быстрые таймреймы анализировать, то на случай пропажи сообщения можно и продублировать (т.е. настроить алерт на 2-3 бара назад реагировать). А дату-время надо честные, а не последние!
2) Почему в теме стоит SELL? откуда она берется? В теле-то я явно Buy прописываю.
А вообще-то мне как раз в теме хочется все указать, чтобы письмо даже открывать не приходилось.
Спасибо |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Прямо сразу рецептов не дам. Давай разбираться.
Цитата: |
Как вывести дату/время/цену предоплагаемого совершения сделки?
Очевидно что hour() мне ничего не дает.
|
Вероятно надо получить время получения сигнала. Попробуй вместо +Hour()+":"+Minute()
Код: |
DateTimeToStr(Now())
|
Только это будет именно текущее время. А время бара наврное надо вместо Now() вставить DateTime()
Цитата: |
Почему в теме стоит SELL? откуда она берется? В теле-то я явно Buy прописываю.
|
Цитата из хелпера
4. Type определяет тип сигнала. Предопределенные типы: 0 - по умолчантю, 1 - покупка (buy), 2 - продажа (sell), 3 - короткая продажа (short), 4 - закрытие короткой продажи (cover). Можно использовать и большие числа, они получат определение "other"
У тебя в коде явно указано 2. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Цитата: |
А вообще-то мне как раз в теме хочется все указать, чтобы письмо даже открывать не приходилось.
|
Тема сообщения(Subject): Задается в (type) (4ый параметр) |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Caravancheg
Зарегистрирован: 02.08.2008
Сообщения: 46
|
Ой, я баран, обсчитался с параметрами.
Думал 2 у меня - флаг make a beep...
Буду пробовать. Только вот почему-то и
s=DateTimeToStr(Now()); и s=DateTimeToStr(DateTime()); не проходят проверку синтаксиса:
Argument #1 has incorrect type
Ну да ладно.
С темой ты помог, это главное было.
Спасибо! |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Вот такая строка у меня прошла
Код: |
AlertIf( 1, "EMAIL", "Buy "+Name()+" " + DateTimeToStr(Now()), 1 );
|
А вот писать в сабже все что надо не получается... |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Caravancheg
Зарегистрирован: 02.08.2008
Сообщения: 46
|
Бред какой-то (см скриншот)...
build 5.10.2
Кстати,
AlertIf( Buy, "EMAIL", "Buy "+Name()+" "+Now(), 1, 2, 1 );
почему-то выдает алерты и за 7 и за 6 число.
Я рассчитывал, что последняя единичка скажет только последний ба проверять.
Ладно, неважно... |
|
|
Посмотреть профиль Отправить личное сообщение |
|
Caravancheg
Зарегистрирован: 02.08.2008
Сообщения: 46
|
Все-таки запостю картинку.
Строчка AlertIf( Buy, "EMAIL", "Buy "+Name()+" "+Now(), 1, 2, 1 );
В настройках n Last days = 1
Поэтому тестер вообще ни одной сделки для Buy не изобразил. По-крайней мере для тикеров, начинающихся на C.
Однако на мыло свалилось несколько.
Такое впечатление, что последний параметр (n Bar назад) берет именно последние бары, не важно, что они за прошлые даты....
Как бы сделать, чтобы алерты слались именно за честный последний бар, который попадает под действие настроек тестера (в данном слечае 8.01.09)?
ну не городить же вывод в файл, фильтрацию каким-то внешним приложением.... |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Чета не совсем понял. Так получается, что параметр lookback не работает? Типа стоит 1 а Ами выдает сигналы не только последнего бара?
Вообще я сам никогда не пользовался функцией ALERTIF() и нюансов использования не знаю. Вероятно она предназначена не только для использования в АА и поэтому выдает алерты не зависимо от настроек АА.
Если параметр lookback почему либо не работает, то можно прямо в коде написать использование ТОЛЬКО ПОСЛЕДНЕГО БАРА. Например так
Код: |
Строчка AlertIf( Buy[BarCount-1], "EMAIL", "Buy "+Name()+" "+Now(), 1, 2, 1 );
|
|
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Caravancheg
Зарегистрирован: 02.08.2008
Сообщения: 46
|
Спасибо!
С Buy[BarCount-1] работает именно, как я хотел. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
|