#12229 - Wed Sep 08 2010 07:36 PM
Re: Насчёт создания скриптов и индикаторов
[Re: Nektodron]
|
journeyman
Registered: Thu May 27 2010
Записи: 84
|
Не правильно сформулировал. Задача, определить сколько баров прошло с открытия позиции по запущенному скрипту. Стратегия, переворотная, в любой момент или один лонг, или один шорт. Как это связать с предложенным Вами методом:
var BarEntry = 0;
for(int k = 0; order.Date < sec.Bars[k].Date; k++) { BarEntry = k; }
|
|
Наверх
|
|
|
|
#12254 - Thu Sep 09 2010 12:10 AM
Re: Насчёт создания скриптов и индикаторов
[Re: Nektodron]
|
journeyman
Registered: Thu May 27 2010
Записи: 84
|
Это не серьёзно из-за пустяка отправлять к программисту. Да, циклы foreach и for предназначены для разных целей. Подскажите, что необходимо указать для использования order.Date без ошибки и использования foreach?
|
|
Наверх
|
|
|
|
#12381 - Thu Sep 09 2010 11:18 PM
Re: Насчёт создания скриптов и индикаторов
[Re: fx_trader]
|
journeyman
Registered: Thu May 27 2010
Записи: 84
|
Господа разработчики, можно попросить вас после ответов на другие "многочисленные" вопросы пользователей относительно использования API TSLab, подсказать, как определить сколько баров прошло с момента открытия позиции по запущенному скрипту? Стратегия переворотная, в любой момент или один лонг, или один шорт. Как довести до рабочего состояния предложенный методом:
var BarEntry = 0;
for(int k = 0; order.Date < sec.Bars[k].Date; k++) { BarEntry = k; }
|
|
Наверх
|
|
|
|
#12471 - Fri Sep 10 2010 12:23 PM
Re: Насчёт создания скриптов и индикаторов
[Re: fx_trader]
|
journeyman
Registered: Thu May 27 2010
Записи: 84
|
В Metatrader количество бар с момента открытия позиции определяется следующим образом (подсказали на форуме): int iBarShift_Ticket(int ticket, int timeframe)
{
OrderSelect(ticket, SELECT_BY_TICKET, MODE_TRADES);
bool exact;
int b = iBarShift(OrderSymbol(), timeframe, OrderOpenTime(), exact);
return(b);
}Но в Metatrader свой функционал API предусматривающий следующие элементы: OrderSelect(int index, int select, int pool=MODE_TRADES) - Функция выбирает ордер для дальнейшей работы с ним. int iBarShift( string symbol, int timeframe, datetime time, bool exact=false) Поиск бара по времени. Подскажите, как подобный не хитрый трюк проделать с испольованием API TSLab?
|
|
Наверх
|
|
|
|
#12599 - Sat Sep 11 2010 07:17 PM
Re: Насчёт создания скриптов и индикаторов
[Re: fx_trader]
|
journeyman
Registered: Thu Jan 07 2010
Записи: 85
|
Как я понял у Вас в каждый момент времени открыта только одна позиция, а потому должно сойти следующее:
int barShift=-1;
if(sec.Positions.LastPositionActive!=null)
barShift=k-sec.Positions.LastPositionActive.EntryBarNum;
где k-номер текущего бара
Отредактировано anothar (Sat Sep 11 2010 07:18 PM)
|
|
Наверх
|
|
|
|
#12600 - Sat Sep 11 2010 07:24 PM
Re: Насчёт создания скриптов и индикаторов
[Re: anothar]
|
journeyman
Registered: Thu May 27 2010
Записи: 84
|
anothar, спасибо за помощь, в понедельник попробую.
|
|
Наверх
|
|
|
|
#12633 - Sun Sep 12 2010 10:48 PM
Re: Насчёт создания скриптов и индикаторов
[Re: fx_trader]
|
journeyman
Registered: Sat Aug 21 2010
Записи: 64
|
Как узнать цену последней закрытой сделки? Не моей, а любой, для определения цены в настоящий момент.
|
|
Наверх
|
|
|
|
#13572 - Mon Sep 20 2010 04:45 PM
Re: Насчёт создания скриптов и индикаторов
[Re: Nektodron]
|
journeyman
Registered: Thu May 27 2010
Записи: 84
|
Ну получается, что у вас для ВСЕХ заявок одна переменная BarEntry, в которую попадает дата последней заявки. В чем смысл? Нашлись отзывчивые люди, которые подсказали вариант бесплатно, за платно программистов что-то не нашлось. Вот, код: int BarEntry = 0;
IOrder lastOrder=null;
foreach (IOrder order in secRt.Orders)
lastOrder=order;
if(lastOrder.IsExecuted)
{
for(int k = 0; lastOrder.Date < sec.Bars[k].Date; k++)
{
BarEntry = k;
}
}if(lastOrder.IsExecuted), теперь-то Nektodron, что не так? Почему BarEntry=0 на каждом баре после открытия позиции показывает???
|
|
Наверх
|
|
|
|
#13599 - Mon Sep 20 2010 06:35 PM
Re: Насчёт создания скриптов и индикаторов
[Re: Nektodron]
|
journeyman
Registered: Thu May 27 2010
Записи: 84
|
Ну, как правильно оформить, подскажите? Одну-две строчки изменить надо обладая Вашим знанием программы, я уже всех людей замучил.
|
|
Наверх
|
|
|
|
#13613 - Mon Sep 20 2010 08:11 PM
Re: Насчёт создания скриптов и индикаторов
[Re: Nektodron]
|
journeyman
Registered: Thu May 27 2010
Записи: 84
|
Есть ещё, какой-нибудь пример? Этот: int BarEntry = 0;
//IOrder lastOrder=null;
foreach (IOrder order in secRt.Orders)
{
if(order.IsExecuted)
{
for(int k = 0; order.Date < sec.Bars[k].Date; k++)
{
BarEntry = k;
}
}
}
при открытой позиции показывает BarEntry = 0.
|
|
Наверх
|
|
|
|
#13618 - Mon Sep 20 2010 09:28 PM
Re: Насчёт создания скриптов и индикаторов
[Re: fx_trader]
|
journeyman
Registered: Thu May 27 2010
Записи: 84
|
И так пробовал чтобы IOrder lastOrder=null; учесть: int BarEntry = 0;
IOrder lastOrder=null;
foreach (IOrder order in secRt.Orders)
lastOrder=order;
{
if(lastOrder.IsExecuted)
{
for(int k = 0; lastOrder.Date < sec.Bars[k].Date; k++)
{
BarEntry = k;
}
}
}
|
|
Наверх
|
|
|
|
#13838 - Wed Sep 22 2010 12:06 PM
Re: Насчёт создания скриптов и индикаторов
[Re: fx_trader]
|
journeyman
Registered: Thu May 27 2010
Записи: 84
|
Nektodron, можете как-то прокомментировать 2 поста выше или это должно работать 100%?
|
|
Наверх
|
|
|
|
#14111 - Sun Sep 26 2010 11:27 AM
Re: Насчёт создания скриптов и индикаторов
[Re: fx_trader]
|
journeyman
Registered: Thu May 27 2010
Записи: 84
|
Ребят, давайте не будем мудаками, а будем удовлетворять запросы пользователей.
|
|
Наверх
|
|
|
|
#14135 - Mon Sep 27 2010 11:11 AM
Re: Насчёт создания скриптов и индикаторов
[Re: fx_trader]
|
Pooh-Bah
Registered: Mon Feb 16 2009
Записи: 2130
|
Ребят, давайте не будем мудаками, а будем удовлетворять запросы пользователей. 1. За Клиентов разработчики скрипты не пишут. 2. Будем грубить. Будет бан.
|
|
Наверх
|
|
|
|
#14478 - Thu Sep 30 2010 02:02 AM
Re: Насчёт создания скриптов и индикаторов
[Re: Nektodron]
|
journeyman
Registered: Thu May 27 2010
Записи: 84
|
Ок, Nektodron, по разбираюсь. Ещё увидел новый Интерфейс TSLab.Script.Realtime.IPositionRt, предчувствия меня не подводят, это интерфейс можно использовать для определения кол-ва баров после открытия и закрытия позиции в реал-тайм или ошибаюсь?
|
|
Наверх
|
|
|
|
#14479 - Thu Sep 30 2010 07:45 AM
Re: Насчёт создания скриптов и индикаторов
[Re: fx_trader]
|
journeyman
Registered: Sat Aug 21 2010
Записи: 64
|
Как то странно работают функции CloseAtStop и BuyIfGreater . Вход и выход осуществляется уже только на закрытом баре, а не на текущем. Как сделать чтобы были возможны операции с текущим баром
|
|
Наверх
|
|
|
|
|
|