У вас не стоит Flash Player
Page 2 of 3 < 1 2 3 >
Настройки
#26544 - Tue Apr 26 2011 12:15 PM Re: #12 / Индикатор: SuperTrend [Re: Nektodron]
RomanK Offline
stranger

Registered: Sun Apr 17 2011
Записи: 6
Добрый день. У меня подобная ошибка возникает. Я подключал внешний скрипт стратегии, которая у вас на форуме находится (Donchian_breakout). При сохранении стратегии я получаю ошибку 12:14:14.14 100 Скрипт: TestScript. c:\Documents and Settings\enote\Local Settings\Application Data\TSLab\TSLab\temp\code32.cs(26,22) : error CS0234: The type or namespace name 'ScriptEngine' does not exist in the namespace 'TSLab' (are you missing an assembly reference?)
Как от нее избавиться - подскажите?

Наверх
#26570 - Tue Apr 26 2011 01:41 PM Re: #12 / Индикатор: SuperTrend [Re: RomanK]
Nektodron Offline

Carpal Tunnel

Registered: Thu Oct 23 2008
Записи: 5492
Вероятно не изменили путь к файлу в блоке внешний скрипт на свой.

Наверх
#26604 - Tue Apr 26 2011 07:08 PM Re: #12 / Индикатор: SuperTrend [Re: Nektodron]
RomanK Offline
stranger

Registered: Sun Apr 17 2011
Записи: 6
Я уже разобрался. Там соединения не было между источником и внешним скриптом.
Кстати можете ссылку дать на материал, что означают эти соединения. Какие блоки должны присутствовать в режиме редактирования в случае работы с внешним скриптом?

Наверх
#37236 - Sat Feb 11 2012 04:25 PM Re: #12 / Индикатор: SuperTrend [Re: RomanK]
vito333 Offline
Pooh-Bah

Registered: Wed Oct 26 2011
Записи: 2108
Loc: botland
на самом деле на принципах, которые в этой ветке заложены в SuperTrend базируется TrendMagic, а SuperTrend базируется только на ATR

но и то, что есть реализовано как-то не так - сужу по линиям SuperTrend-а - в нете везде они ровные



Отредактировано vito333 (Sat Feb 11 2012 04:26 PM)

Наверх
#37237 - Sat Feb 11 2012 04:41 PM Re: #12 / Индикатор: SuperTrend [Re: vito333]
777 Offline
Carpal Tunnel

Registered: Thu Apr 01 2010
Записи: 2564
Loc: г. Дзержинский
В ветке этот вопрос уже встречался.
Ответ: Я не делал усреднения. Вы можете добавить любое из имеющихся. Просто к индикатору добавьте к примеру SMA и получите то, что везде в нете.
_________________________
«Существует 3 типа лжи: ложь, наглая ложь и статистика»
Дизраэли.

Наверх
#37244 - Sat Feb 11 2012 05:34 PM Re: #12 / Индикатор: SuperTrend [Re: 777]
vito333 Offline
Pooh-Bah

Registered: Wed Oct 26 2011
Записи: 2108
Loc: botland
вот тут логика кривовата

for (int i = 0; i < c.Count; i++)
{
var cm = h[i] + atr[i];
var cb = l[i] - atr[i];

var st = cci[i] > 0 ? cb : cm;
list.Add(st);
}
нужно сверяться с предыдущим значением list на меньше\больше, тогда не будет лишней пляски


Отредактировано vito333 (Sat Feb 11 2012 06:25 PM)

Наверх
#37245 - Sat Feb 11 2012 05:48 PM Re: #12 / Индикатор: SuperTrend [Re: vito333]
777 Offline
Carpal Tunnel

Registered: Thu Apr 01 2010
Записи: 2564
Loc: г. Дзержинский
Ну у меня только одно оправдание. Код этого индюка сделан в 2010 году, я тогда только начинал изучать c# smile Поправьте, как считаете нужным и выкладывайте сюда, будут все только Вам благодарны!
_________________________
«Существует 3 типа лжи: ложь, наглая ложь и статистика»
Дизраэли.

Наверх
#37248 - Sat Feb 11 2012 06:29 PM Re: #12 / Индикатор: SuperTrend [Re: 777]
vito333 Offline
Pooh-Bah

Registered: Wed Oct 26 2011
Записи: 2108
Loc: botland
Code:
    [HandlerCategory("vvTSLtools")]
    public class TrendMagic : IBar2DoubleHandler, IContextUses
    {
        [HandlerParameter(true, "50", Min = "5", Max = "100", Step = "1")]
        public int PeriodCCI { get; set; }

        [HandlerParameter(true, "5", Min = "1", Max = "30", Step = "1")]
        public int PeriodATR { get; set; }

        public IList<double> Execute(ISecurity source)
        {

            var h = source.HighPrices;
            var l = source.LowPrices;
            var c = source.ClosePrices;
            double CurrTMVal;

            var atr = Series.AverageTrueRange (source.Bars, PeriodATR);
            var cci = Series.CCI(source.Bars, PeriodCCI);
            IList<double> tm = new List<double>(c.Count);

            for (int i = 0; i < c.Count; i++)
            {
                if (i == 0)
                {
                    tm.Add((h[i] - l[i])/2);
                    continue;
                };

                if (cci[i] > 0)
                {
                    // тренд растущий
                    CurrTMVal = l[i] - atr[i];
                    CurrTMVal = CurrTMVal < tm[i - 1] ? tm[i - 1] : CurrTMVal;
                }
                else
                {
                    // тренд снижающийся
                    CurrTMVal = h[i] + atr[i];
                    CurrTMVal = CurrTMVal > tm[i - 1] ? tm[i - 1] : CurrTMVal;
                }
                tm.Add(CurrTMVal);
            }

            return tm;
        }
        public IContext Context { get; set; }
    }

Наверх
#37251 - Sat Feb 11 2012 07:47 PM Re: #12 / Индикатор: SuperTrend [Re: vito333]
usas Offline
Pooh-Bah

Registered: Sun Feb 21 2010
Записи: 2331
Loc: Ухта
А кубик иде?

Наверх
#37263 - Sun Feb 12 2012 04:26 AM Re: #12 / Индикатор: SuperTrend [Re: usas]
vito333 Offline
Pooh-Bah

Registered: Wed Oct 26 2011
Записи: 2108
Loc: botland

Наверх
#44260 - Sat Jul 14 2012 04:05 PM Re: #12 / Индикатор: SuperTrend [Re: vito333]
vito333 Offline
Pooh-Bah

Registered: Wed Oct 26 2011
Записи: 2108
Loc: botland
ссылка на то, что настоящий SuperTrend построен только на ATR (код от автора)

пруфлинк


Отредактировано vito333 (Sat Jul 14 2012 04:10 PM)

Наверх
#51535 - Tue Jan 29 2013 02:47 PM Re: #12 / Индикатор: SuperTrend [Re: 777]
Steven Smith Offline
stranger

Registered: Tue Jan 29 2013
Записи: 11
Loc: USA
I did not do averaging.
You can add any of the existing ones.
Just to add an indicator for example SMA and get that
everywhere on the net.
_________________________
cfd trading

Наверх
#63652 - Tue Aug 05 2014 12:09 AM Re: #12 / Индикатор: SuperTrend [Re: 777]
VladMih Offline
enthusiast

Registered: Thu Apr 11 2013
Записи: 359
Originally Posted By: 777
SuperTrend
CCI(50)>0?(LOW-TR):(HIGH+TR)
TR - truerange
Подцепляем к сжатию(можно и к источнику).
Период CCI вынес отдельно, так, что его то же можно крутить(по книге должен быть ровно 50)
TR - наделил EMA, и он стал ATR так, что то ж можно крутить.
Если период EMA=1, то ATR=TR
На картинке ТСЛаба супертренд с мультипликатором 3. Меньше намного хуже, больше - вообще не вижу смысла, т.к. слишком далеко убегает от цены.

На второй картинке Супертренд слегка усовершенствованный с теми же значениями ATR и CCI. Тренд держит намного лучше, держится плотно к цене и даже идет прямо по цене, при этом не меняя цвет зачастую даже на неслабых откатах (тренд характеризует не только направление, но и цвет).

Я начал его делать для ТСЛ, но для меня он оказался посложней, чем робот. Если есть интерес, дам подробности как по коду, так и по некоторым вариантам использования.


Attachments
1.png (375 downloads)
2.png (360 downloads)


Наверх
#63653 - Tue Aug 05 2014 12:46 AM Re: #12 / Индикатор: SuperTrend [Re: VladMih]
VladMih Offline
enthusiast

Registered: Thu Apr 11 2013
Записи: 359
Да, и еще. Нижайшая просьба показать как это можно сделать не кодом, а кубиками. Очень уж меня заинтриговало почему я за 4 дня, несколько раз начиная с нуля, смог сделать только нечто похожее на 1-й рисунок, хотя алгоритм полностью понятен.

Правда, есть нюанс: почему-то компилятор отказался принимать у меня вариант с использованием связки логформулы с блоком "Not", который по идее должен был дать искомое. А без этого два тренда-направления с двумя цветами логикой в формуле описать невозможно.

Наверх
#63657 - Tue Aug 05 2014 10:19 AM Re: #12 / Индикатор: SuperTrend [Re: VladMih]
vito333 Offline
Pooh-Bah

Registered: Wed Oct 26 2011
Записи: 2108
Loc: botland
похож на magictrend из моего сборника

Наверх
#63659 - Tue Aug 05 2014 10:53 AM Re: #12 / Индикатор: SuperTrend [Re: vito333]
VladMih Offline
enthusiast

Registered: Thu Apr 11 2013
Записи: 359
Я почему-то не вижу его в сборнике, хотя скачивал последнюю версию, выложенную в вашей ветке 31 июля.
Более менее похожий VTrend (если настройки повыше), но это тоже совсем не то.
___________
Индикатор правильно называется не magictrend, а TrendMagic.
Щас буду смотреть - поторопился сообщить, не успев глянуть.


Отредактировано VladMih (Tue Aug 05 2014 11:14 AM)
Edit Reason: Нашел! )))))))

Наверх
#63660 - Tue Aug 05 2014 11:28 AM Re: #12 / Индикатор: SuperTrend [Re: VladMih]
VladMih Offline
enthusiast

Registered: Thu Apr 11 2013
Записи: 359
Originally Posted By: VladMih
Индикатор [в наборе] правильно называется не magictrend, а TrendMagic.
Чуть более нервный и без раскрашивания (оно тоже имеет значение), но в основном очень похож. Если не сделаю или не найду то, что искал, буду пользоваться этим.

vito333, спасибо!
А нельзя ли посмотреть как TrendMagic выглядит в кубиках?

Наверх
#63662 - Tue Aug 05 2014 03:29 PM Re: #12 / Индикатор: SuperTrend [Re: VladMih]
vito333 Offline
Pooh-Bah

Registered: Wed Oct 26 2011
Записи: 2108
Loc: botland
что значит "в кубиках"?

а внутреннюю логику могу глянуть у вашей версии и сказать, одно и то же это или нет

Наверх
#63668 - Tue Aug 05 2014 11:09 PM Re: #12 / Индикатор: SuperTrend [Re: vito333]
VladMih Offline
enthusiast

Registered: Thu Apr 11 2013
Записи: 359
Логика та. Небольшая разница скорей всего из-за котировок + нет раскрашивания.

А "в кубиках" - это значит сделанный блоками ТСЛаба. Учиться пытаюсь, вот и хочу посмотреть как реализовано. Чтобы понять почему сам не смог.
Code:
#property copyright "(С) 2014, Satori, 1.0"
#property link      "http://fx-vladmih.ru"
#property version   "1.0"
#property description "Однотаймовый супертренд. Используется в мультитаймовом. Поэтому не удалять!"

#property indicator_chart_window
#property indicator_buffers 2

#property indicator_type1 DRAW_LINE
#property indicator_type2 DRAW_LINE

#property indicator_color1 Lime
#property indicator_color2 Red

#property indicator_width1 2
#property indicator_width2 2

#property indicator_style1 STYLE_SOLID
#property indicator_style2 STYLE_SOLID

extern   int   ATR_Period  =  5;

double TrendUp[];
double TrendDown[];
int st = 0;

//+------------------------------------------------------------------+
//| Custom indicator initialization function|
//+------------------------------------------------------------------+
int init()
 {
//---- indicators

  SetIndexBuffer(0, TrendUp);
  SetIndexBuffer(1, TrendDown);

//----
  return(0);
 }
//+------------------------------------------------------------------+
//| Custor indicator deinitialization function|
//+------------------------------------------------------------------+
int deinit() {

  return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function|
//+------------------------------------------------------------------+
int start()
 {

  int limit, i;
  double cciTrendNow, cciTrendPrevious;

  int counted_bars = IndicatorCounted();
//---- check for possible errors
  if(counted_bars < 0) return(-1);
//---- last counted bar will be recounted
  if(counted_bars > 0) counted_bars--;

  limit=Bars-counted_bars;

  for(i = limit; i >= 0; i--) {
     cciTrendNow = iCCI(NULL, 0, 50, PRICE_TYPICAL, i);
     cciTrendPrevious = iCCI(NULL, 0, 50, PRICE_TYPICAL, i+1);

     if (cciTrendNow >= st && cciTrendPrevious < st) {
        TrendUp[i+1] = TrendDown[i+1];
     }

     if (cciTrendNow <= st && cciTrendPrevious > st) {
        TrendDown[i+1] = TrendUp[i+1];
     }

     if (cciTrendNow >= st) {
        TrendUp[i] = Low[i] - iATR(NULL, 0, ATR_Period, i);
        if (TrendUp[i] < TrendUp[i+1]) {
           TrendUp[i] = TrendUp[i+1];
        }
     }
     else if (cciTrendNow <= st) {
        TrendDown[i] = High[i] + iATR(NULL, 0, ATR_Period, i);
        if (TrendDown[i] > TrendDown[i+1]) {
           TrendDown[i] = TrendDown[i+1];
        }
     }
  }

//----
  return(0);
 }

Наверх
#63672 - Wed Aug 06 2014 03:47 AM Re: #12 / Индикатор: SuperTrend [Re: VladMih]
vito333 Offline
Pooh-Bah

Registered: Wed Oct 26 2011
Записи: 2108
Loc: botland
В кубиках нету, апи

Наверх
Page 2 of 3 < 1 2 3 >


Moderator:  ViL, sar