Список форумов AmiSite.ru AmiSite.ru
Форум по Ами
 FAQ  •  Поиск  •  Пользователи  •  Группы   •  Регистрация  •  Профиль  •  Войти и проверить личные сообщения  •  Вход
 AFL Следующая тема
Предыдущая тема
Начать новую тему  Ответить на тему
Автор Сообщение
000
Site Admin


Зарегистрирован: 10.12.2007
Сообщения: 9106

СообщениеДобавлено: Сб Июл 25, 2009 5:04 pm Ответить с цитатой Вернуться к началу

Только написать свой вариант.
Я, к сожаленю, не знаю формулы и точно сказать не могу

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
dar



Зарегистрирован: 12.05.2009
Сообщения: 17

СообщениеДобавлено: Пн Июл 27, 2009 6:41 pm Ответить с цитатой Вернуться к началу

Для вычисления STDEV с переменным периодом написал вот такой вот код

P1=10;
period=100;

STD1=0;
for( i=period; i<BarCount; i++)
{

S0=0;

for( j=i-P1; j<i+1; j++)
{

S0=S0+(Close[j] - MA(Close[i], P1))*(Close[j] - MA(Close[i], P1));

}

STD1[i]=sqrt(S0/P1);
}


в строке
STD1[i]=sqrt(S0/P1);
выдает ошибку, не могу понять в чем дело?
Посмотреть профиль Отправить личное сообщение
000
Site Admin


Зарегистрирован: 10.12.2007
Сообщения: 9106

СообщениеДобавлено: Пн Июл 27, 2009 10:53 pm Ответить с цитатой Вернуться к началу

Ты путаешь массив и переменную
Нада как то так. Формулу расчета я не знаю, а искать не охота.
Код:

P1=10;
period=100;

STD1=0;

Mov = MA(C, period);

for( i = period; i < BarCount; i++)
{
  S0[i]=0;

  for( j = i-P1; j < i+1; j++)
  {
    S0[i] = S0[i] + (Close[j] - Mov[i])*(Close[j] - Mov[i]);
  }

  STD1[i]=sqrt(S0[i]/P1);


_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
dar



Зарегистрирован: 12.05.2009
Сообщения: 17

СообщениеДобавлено: Вт Июл 28, 2009 6:32 pm Ответить с цитатой Вернуться к началу

Ага, понял. Спасибо.
Посмотреть профиль Отправить личное сообщение
ID
Советник


Зарегистрирован: 07.01.2008
Сообщения: 370

СообщениеДобавлено: Пт Сен 18, 2009 10:47 am Ответить с цитатой Вернуться к началу

Вечно забываю функцию в АМИ, которая у дроби грохает числа после ЗПТ с нужной точностью.
Напомните плиз
Посмотреть профиль Отправить личное сообщение
ID
Советник


Зарегистрирован: 07.01.2008
Сообщения: 370

СообщениеДобавлено: Пт Сен 18, 2009 10:49 am Ответить с цитатой Вернуться к началу

prec..... ВСПОМНИЛ! Сук.!
Млин... Ну вечно забываю
Посмотреть профиль Отправить личное сообщение
Andrei72



Зарегистрирован: 03.07.2009
Сообщения: 3
Откуда: Санкт-Петербург

СообщениеДобавлено: Сб Сен 26, 2009 2:11 am Ответить с цитатой Вернуться к началу

Помогите кто нибудь пожалуйста как написать чтобы на 15 минутках после срабатывания стоппрофита не генерились сигналы купить продать до конца этого дня Заранее спасибо
Посмотреть профиль Отправить личное сообщение
ID
Советник


Зарегистрирован: 07.01.2008
Сообщения: 370

СообщениеДобавлено: Сб Сен 26, 2009 6:01 am Ответить с цитатой Вернуться к началу

в конце своего кода добавь это:

Код:
Buy = ExRem(Sell,DateNum() != Ref(DateNum(),-1);


может быть поможет, но не уверен. Это первое, что пришло в голову. Если не поможет отпиши здесь - твой вопрос я думаю легко решаем.
Посмотреть профиль Отправить личное сообщение
Andrei72



Зарегистрирован: 03.07.2009
Сообщения: 3
Откуда: Санкт-Петербург

СообщениеДобавлено: Сб Сен 26, 2009 9:58 am Ответить с цитатой Вернуться к началу

Спасибо за ответ Код сигналы убирает но не только после стоппрофита но и после стоплосса и точки входа меняются вот код: _SECTION_BEGIN("Price");
SetPositionSize(2,4);//количество контрактов
SetChartOptions(0,chartShowArrows|chartShowDates);
_N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}} Open %g, Hi %g, Lo %g, Close %g (%.1f%%) {{VALUES}}", O, H, L, C, SelectedValue( ROC( C, 1 ) ) ));
col = IIf( Close > Ref( Close, -1 ), colorGreen, colorRed );
Plot( Close, "Price", col, styleBar| styleThick );Graph0BarColor = IIf( Close > Ref( Close, -1 ), colorGreen, colorRed );
//
Opt1=Optimize("Opt1",24,10,60,1);//
Opt2=Optimize("Opt2",700,500,2000,100);//
Opt3=Optimize("Opt3",1300,1000,2000,100);//
//
HL=Ref(HHV(H,Opt1),-1);
LL=Ref(LLV(L,Opt1),-1);
Plot(HL,"HL",10,8);
Plot(LL,"LL",11,8);
//
BuyPrice=C;
SellPrice =C ;
ShortPrice= C;
CoverPrice= C ;
//
CondBuy = HL > Open AND HL < High ;
CondSell = Cross(LL,C);
//
Buy = CondBuy;
Sell = CondSell;
Buy = ExRem(Sell,DateNum() != Ref(DateNum(),-1));
ApplyStop(0,2,Opt2,1,False,0);//стоп
ApplyStop(1,2,Opt3,1,False,0);// профит

Equity(1);
//
PlotShapes(IIf(Buy,shapeUpArrow,0),10,0,L,-104);
PlotShapes(IIf(Sell,shapeDownArrow,0),9,0,H,-24);
PlotShapes(IIf(Sell==2, shapeSmallSquare, shapeNone), 10, 0, (H+L+C+O)/4, Offset=0);//Отрисовка стоплосса после сигнала Buy
PlotShapes(IIf(Sell==3, shapeSmallDownTriangle, shapeNone), 10, 0, (H+L+C+O)/4, Offset=-50);
// Отрисовка названия сделки и цены закрытия бара
for( i = 0; i < BarCount; i++ )
{
if( Buy[i]==1 ) PlotText("Long"+ "\n " +BuyPrice[i] , i, L[i]/1.040, 6 );
if( Sell[i]==1 ) PlotText("ExitLong"+ "\n " + SellPrice[i], i, H[ i ]*1.035, 11);
if( Sell[i]==2 ) PlotText("StopLoss"+ "\n " + SellPrice[i], i, H[ i ]*1.015, 4);

}
//
AlertIf( Buy, "SOUND C:\\Windows\\Media\\alarm2.wav", "Audio alert", 3 );//Звуковой сигнал
AlertIf( Sell, "SOUND C:\\Windows\\Media\\malfound.wav", "Audio alert", 3 );//Звуковой сигнал
AlertIf( Sell==2, "SOUND C:\\Windows\\Media\\malfound.wav", "Audio alert", 3 );//Звуковой сигнал


_SECTION_END();
Посмотреть профиль Отправить личное сообщение
Andrei72



Зарегистрирован: 03.07.2009
Сообщения: 3
Откуда: Санкт-Петербург

СообщениеДобавлено: Сб Сен 26, 2009 4:50 pm Ответить с цитатой Вернуться к началу

Спасибо вопрос снимается Buy = ExRem(Buy,DateNum() != Ref(DateNum(),-1)); все работает
Посмотреть профиль Отправить личное сообщение
Teema



Зарегистрирован: 01.04.2009
Сообщения: 184

СообщениеДобавлено: Чт Мар 04, 2010 7:05 pm Ответить с цитатой Вернуться к началу

Как можно зафиксировать на весь день High & Low первого часа?
Уровни держать весь день ?
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
000
Site Admin


Зарегистрирован: 10.12.2007
Сообщения: 9106

СообщениеДобавлено: Пт Мар 05, 2010 1:37 am Ответить с цитатой Вернуться к началу

а фрейм какой? Часовой или меньше?
Просто универсальный код (для любого фрейма) писать сложнее.

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Teema



Зарегистрирован: 01.04.2009
Сообщения: 184

СообщениеДобавлено: Пт Мар 05, 2010 7:05 am Ответить с цитатой Вернуться к началу

000 писал(а):
а фрейм какой? Часовой или меньше?
Просто универсальный код (для любого фрейма) писать сложнее.

Для 15 мин например. Хотя-бы какой подход?
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
000
Site Admin


Зарегистрирован: 10.12.2007
Сообщения: 9106

СообщениеДобавлено: Пт Мар 05, 2010 9:36 am Ответить с цитатой Вернуться к началу

Подход такой.
1. Переключаешься на часовой фрейм (Функция TimeFrameSet())
2. Находишь первый бар в начале дня
Код:

BegDay = Day() != Ref(Day(), -1);

3. Берешь его мин/макс
Код:

HourMax = ValueWhen(BegDay, H);
HourMin = ValueWhen(BegDay, L);

4. Переключаешься обратно на базовый фрейм.

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
sas55



Зарегистрирован: 15.03.2009
Сообщения: 61
Откуда: Омск

СообщениеДобавлено: Вс Мар 07, 2010 2:13 pm Ответить с цитатой Вернуться к началу

добрый день
подскажите пжл
есть условие
BUY=CROSS(H,REF(Y,-1)) OR (H>ref(Y,-1) and Hour() !=ref(Hour(),-1));
как правильно прописать покупку не начала часа ,а через 35 минут Question[/b]

_________________
"Если мы выиграем на финансовом фронте, то мы выиграем всё" В.И.Ленин
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Показать сообщения:      
Начать новую тему  Ответить на тему


 Перейти:   



Следующая тема
Предыдущая тема
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете вкладывать файлы
Вы не можете скачивать файлы


Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme :: Часовой пояс: GMT + 3

File Attachment © by Meik Sievertsen