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



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

СообщениеДобавлено: Ср Май 07, 2014 10:23 am Ответить с цитатой Вернуться к началу

Система честно подсмотрена на одном сайте http://www.jc-trader.com/2013/12/eurofsb.html#more Описание таково
Цитата:
Начитался квантов, тоже решил попробовать как они Smile
В общем, получилась система, которая позволяла на истории зарабатывать на валютной паре EURUSD либо на фьючерсе на Евро. Правила довольно просты.


Для длинных позиций:

1. Если на сегодняшний день нет открытых позиций
2. Если сегодняшний лоу выше хая прошлого месяца
3. Если индикатор ROC, построенный по ценам закрытия с периодом 10, сегодня меньше чем вчера

Выставляем лимитный ордер на открытие позиции по цене вчерашнего лоу

Для коротких позиций все наоборот.

Если открылась позиция, закрываем ее в конце дня.

дальше присутствует тест и код для WealthLab 6
Код:
using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using WealthLab;
using WealthLab.Indicators;

namespace WealthLab.Strategies
{
 public class MyStrategy : WealthScript
 {
  protected override void Execute()
  {
   SetScaleMonthly();
   DataSeries MonthlyHigh = High;
   DataSeries MonthlyLow = Low;
   RestoreScale();
   
   MonthlyHigh = Synchronize(MonthlyHigh);
   MonthlyLow = Synchronize(MonthlyLow);
   
   DataSeries PC = ROC.Series(Close, 10);
   ChartPane PCPane = CreatePane( 60, true, true );
   PlotSeries(PCPane,PC,Color.Green,LineStyle.Histogram,1);   
   
   PlotSeries(PricePane,MonthlyHigh,Color.Red,LineStyle.Solid,1);
   PlotSeries(PricePane,MonthlyLow,Color.Green,LineStyle.Solid,1);
   PlotStops();
   
   for(int bar = 20; bar < Bars.Count; bar++)
   {
   
    if (IsLastPositionActive)
    {
         SellAtClose(bar, LastPosition);
      CoverAtClose(bar, LastPosition);
    }
 
    if ( LastActivePosition == null )
    if(Low[bar] > MonthlyHigh[bar-1])
      if(PC[bar] < PC[bar-1])
      BuyAtLimit(bar+1, Low[bar]);
    if ( LastActivePosition == null )
    if(High[bar] < MonthlyLow[bar-1])
      if(PC[bar] > PC[bar-1])
      ShortAtLimit(bar+1, High[bar]);
   }
  }
 }
}

Загвоздка как прописать хай и лой за предыдущий месяц без сдвига, как у автора. Ну или может кто то сваяет код целиком)))

_________________
Деда Мороза не существует!!!
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Ср Май 07, 2014 11:00 am Ответить с цитатой Вернуться к началу

По описанию кажись так
Код:

MontlyH = TimeFrameGetPrice("H", inMonthly, -1);
MontlyL = TimeFrameGetPrice("L", inMonthly, -1);
ROCBuyCond = ROC(C, 10) > Ref(ROC(C, 10), -1);
ROCShortCond = ROC(C, 10) < Ref(ROC(C, 10), -1);

BuyCond = ROCBuyCond AND L > MontlyH;
Buy = Ref(BuyCond, -1) AND L < Ref(L, -1);
BuyPrice = Max(Ref(L, -1), O);

ShortCond = ROCShortCond AND H < MontlyL;
Short = Ref(ShortCond, -1) AND H > Ref(H, -1);
BuyPrice = Min(Ref(H, -1), O);

SellPrice = CoverPrice = C;
Sell = Cover = 1;

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



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

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

Спасибо, буду смотреть

_________________
Деда Мороза не существует!!!
Посмотреть профиль Отправить личное сообщение
Показать сообщения:      
Начать новую тему  Ответить на тему


 Перейти:   



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


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

File Attachment © by Meik Sievertsen