Индикаторы - совместный проект
Atom
31.05.2011


Приветствую всех участников!

Месяц назад я публиковал призыв о совместной разработке индикаторов на базе C#. Прошел месяц, мною было сделано 3 стандартных индикатора SMA, EMA и WMA. И ни строчки кода ни от одного пользователя S#. Каждый день задают вопросы (причем, большинство явно не относящиеся к S# как таковому), получают ответы, но свою помощь предложить не хотят. Стесняются, наверное.

Я понимаю, что дело в мотивации. Зачем помогать делать что-то, если можно подождать пару месяцев (пол года) или сделать самому, а потом пересесть на стандартное. Поэтому я решил найти мотивацию. И я ее нашел. Это лето объявляется летом "Ты мне - я тебе".

Схема простая. Вы делаете индикатор - я отвечаю на три любых вопроса. Вопросы по глюкам S# остаются как есть и раньше - ответ всегда получите. Но вопросы по C#, WFP, примерам, документации, Квику и всему прочему - только за индикатор.[smile] Я думаю честно.

Сделав 5 индикаторов, вы получается бонус - кружку с символикой S#.

Репозитарий с исходниками расположен по адресу http://stocksharpconnectors.codeplex.com Чтобы получить доступ на запись регистрируйтесь на сайте, пишите в эту тему свой логин и какие индюки хотите сделать. Стиль кодирование указывается через R#. Настройки в репозитарии.

Что сделано сейчас:

  1. Acceleration
  2. Alligator
  3. AwesomeOscillator
  4. Fractals
  5. GatorOscillator
  6. MarketFacilitationIndex
  7. BollingerBands
  8. ExponentialMovingAverage
  9. Macd
  10. ParabolicSar
  11. RAVI
  12. SimpleMovingAverage
  13. SmoothedMovingAverage
  14. StandartDeviation
  15. VolumeWeightedMovingAverage
  16. WeightedMovingAverage
  17. WilderMovingAverage
  18. Adx
  19. Atr
  20. ChandeMomentumOscillator
  21. CommodityChannelIndex
  22. DiMinus
  23. DiPlus
  24. Dx
  25. Ichimoku
  26. Momentum
  27. RateOfChange
  28. RelativeStrengthIndex
  29. RVI
  30. TrueRange
  31. DetrendedPriceOscillator
  32. Highest
  33. LinearReg
  34. LinearRegression
  35. LinearRegSlope
  36. Lowest
  37. MeanDeviation
  38. MedianPrice
  39. Peak
  40. PeakBar
  41. QStick
  42. RSquared
  43. StandardError
  44. StochK
  45. Sum
  46. Trix
  47. Trough
  48. TroughBar
  49. UltimateOsc
  50. VerticalHorizontalFilter
  51. Vidya
  52. Volatility
  53. WilliamsR

Теги:


Спасибо:


<< < 19 20 21 22 23  > >>
Garic

Фотография
Дата: 07.08.2011
Ответить


С Амиброкером ATR немного расходится.

Для первой свечи Ами считает ATR = H-L поскольку клоуз предыдущего дня не определён. S# же считает TrueRange не определённым. А так как используется WMA - это влияет на всё последуещее.

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

Спасибо:

Евгений

Фотография
Дата: 12.08.2011
Ответить


Просьба, помогите с выгрузкой данных для тестов.

Нужны по:

Acceleration
Alligator
AwesomeOscillator
Fractals
GatorOscillator
MarketFacilitationIndex
Ichimoku
MedianPrice
Спасибо:

Den

Фотография
Дата: 13.08.2011
Ответить


Уважаемые авторы!

Заметил что ни в одном индикаторе Indicators\Indicators\Trend\*MovingAverage, StandartDeviation, Macd не вызывается событие Changed. Во всех расчетах явно проверяется IsFormed() и нужно только добавить вызов RaiseChangedEvent();

Поправьте, пожалуйста, у кого есть право на запись.
Спасибо:

Mikhail Sukhov

Фотография
Дата: 13.08.2011
Ответить


Den Перейти
у кого есть право на запись.


Давайте свой логин на КодеПлекс, дам такое право. Проект общий и опен-сорс, поэтому авторов может быть много.
Спасибо:

artemox

Фотография
Дата: 13.08.2011
Ответить


Евгений Перейти
Просьба, помогите с выгрузкой данных для тестов.

Нужны по:

Acceleration
Alligator
AwesomeOscillator
Fractals
GatorOscillator
MarketFacilitationIndex
Ichimoku
MedianPrice


MarketFacilitationIndex = ( High - Low )/Volume ?

Могу выгрузить. По остальным надо разбираться, но сейчас времени нет :(
Если найдете формулы для ами то будет проще
Спасибо:

esper

Фотография
Дата: 14.08.2011
Ответить


Den Перейти
Уважаемые авторы!

Заметил что ни в одном индикаторе Indicators\Indicators\Trend\*MovingAverage, StandartDeviation, Macd не вызывается событие Changed. Во всех расчетах явно проверяется IsFormed() и нужно только добавить вызов RaiseChangedEvent();

Поправьте, пожалуйста, у кого есть право на запись.


Для индикаторов, которые наследуются от SingleValueIndicator<T> и LengthIndicator<T>, вызов события выполняется при установке нового значения индикатора.
Спасибо:

Den

Фотография
Дата: 15.08.2011
Ответить


esper Перейти

Для индикаторов, которые наследуются от SingleValueIndicator<T> и LengthIndicator<T>, вызов события выполняется при установке нового значения индикатора.


Да, все правильно. Поправил только порядок присвоения в Macd: сначала signalValue, потом Value.
Спасибо:

Евгений

Фотография
Дата: 15.08.2011
Ответить


artemox Перейти
Евгений Перейти
Просьба, помогите с выгрузкой данных для тестов.

Нужны по:

Acceleration
Alligator
AwesomeOscillator
Fractals
GatorOscillator
MarketFacilitationIndex
Ichimoku
MedianPrice


MarketFacilitationIndex = ( High - Low )/Volume ?

Могу выгрузить. По остальным надо разбираться, но сейчас времени нет :(
Если найдете формулы для ами то будет проще



Acceleration - http://ta.mql4.com/ru/in...celeration_deceleration
Alligator - http://ta.mql4.com/ru/indicators/bills/alligator
AwesomeOscillator - http://ta.mql4.com/ru/indicators/bills/awesome
Fractals - http://ta.mql4.com/ru/indicators/bills/fractal
GatorOscillator - http://ta.mql4.com/ru/indicators/bills/gator
MarketFacilitationIndex - http://ta.mql4.com/indic...rket_facilitation_index
Ichimoku - http://www.fxtrader.ru/t...indikator-ishimoku.html

Спасибо:

Tester

Фотография
Дата: 17.08.2011
Ответить


Проверьте пожайлуста, возможно для SimpleMovingAverage такой код лучше.

Код
public override void Add(decimal newValue)
{
            Buffer.Add(newValue);

            if (!IsFormed)
                return;
		    
            Value = Buffer.Sum() / Length;
		    Buffer.RemoveAt(0);
}
Спасибо:

Den

Фотография
Дата: 17.08.2011
Ответить


Tester Перейти
Проверьте пожайлуста, возможно для SimpleMovingAverage такой код лучше.


Код
public override void Add(decimal newValue)
{
            Buffer.Add(newValue);

            if (!IsFormed)
                return;
		    
            Value = Buffer.Sum() / Length;
		    Buffer.RemoveAt(0);
}

Это неверный код, т.к. при удалении первого элемента буффера, нужно также вычитать из Value его вклад.
Спасибо:
<< < 19 20 21 22 23  > >>

Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy