#14306 - Tue Sep 28 2010 01:50 PM
Re: Заказ индикаторов в TSLab
[Re: ZSE]
|
member
Registered: Thu Aug 12 2010
Записи: 105
|
Присоединяюсь к предложению! По крайней мере это должно касаться разработок, выполненных членами команды TSLab. Невозможно знать о появлении новых возможностей, которые появляются, а читать регулярно форум - на это не всегда хватает времени.
Все изменения, которые появились в программе, описываются в анонсах новой версии. Так вы читаете не внимательно! То что попадает - да, описывается, а речь тут идет о том, ЧТО НЕ ПОПАДАЕТ!
|
Наверх
|
|
|
|
#14423 - Wed Sep 29 2010 01:52 PM
Re: Заказ индикаторов в TSLab
[Re: Avis]
|
journeyman
Registered: Fri Jun 18 2010
Записи: 53
Loc: Moscow
|
Хотелось бы по возможности иметь под руками индикатор WATR ======================================================= Трендовый индикатор прорыва динамического ценового канала на основе WATR в формате Omega TradeStation.
{Volatility Trend Indicator based on Smoothed True Range
and dynamic period of trend calculation. Copyright (c) konkop 2001}
Inputs:
Len(21), {WATR Lenght}
M(3), {WATR Multiplier}
Max_per(50); {Max. Dynamic Period for Trend Calculation}
Vars: TrueHi(H), TrueLo(L), TrueRng(0), WATR(0), Trend(C), Period(0) ;
{Calculate Smoothed TR}
If Close[1] > High Then TrueHi = Close[1] Else TrueHi = High;
{Calculate TrueHigh}
If Close[1] < Low Then TrueLo = Close[1] Else TrueLo = Low;
{Calculate TrueLow}
TrueRng = TrueHi — TrueLo; {Calculate TrueRange}
WATR = WAverage(TrueRng,Len); {Calculate WATR}
{Trend Calculation}
Condition1= C > Trend[1]; {UpTrend}
Condition2= C <= Trend[1]; { DownTrend}
{SetUp Period When New Trend Begin}
If C Cross over Trend[1] or C Cross Below Trend[1] Then Period = 0;
If Period < Max_per Then Begin {Counting UpTrends with dynamic period}
If Condition1 Then Begin
Period = Period +1;
Trend = Highest(C,Period) — M∗WATR;
End ; {Counting DownTrends with dynamic period}
If Condition2 Then Begin
Period = Period + 1;
Trend = Lowest(C,Period) + M∗WATR;
End;
End Else Begin {Counting UpTrends with constant period}
If Condition1 Then Trend = Highest(C,Max_Per)[1] — M∗WATR;
{Counting DownTrends with constant period}
If Condition2 Then Trend = Lowest(C,Max_per)[1] + M∗WATR;
End; {Plotting Indicator}
Plot1(Trend,»Trend»);
============================================= Тоже самое под MetaTrader
//+------------------------------------------------------------------+
//| WATR.mq4
//| Written WizardSerg under article konkop in "Modern trading" #4/2001
//| http://www.wizardserg.inweb.ru
//| wizardserg@gmail.com
//+------------------------------------------------------------------+
#property copyright "Written WizardSerg under article konkop in #4/2001"
#property link "http://www.wizardserg.inweb.ru"
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Coral
#property indicator_color2 DodgerBlue
//---- input parameters
extern int WATR_K = 10;
extern double WATR_M = 4.0;
extern int ATR = 21;
//---- buffers
double ExtMapBufferUp[];
double ExtMapBufferDown[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
IndicatorBuffers(2);
SetIndexBuffer(0, ExtMapBufferUp);
ArraySetAsSeries(ExtMapBufferUp, true);
SetIndexStyle(0, DRAW_LINE, STYLE_SOLID, 2);
SetIndexBuffer(1, ExtMapBufferDown);
ArraySetAsSeries(ExtMapBufferDown, true);
SetIndexStyle(1, DRAW_LINE, STYLE_SOLID, 2);
IndicatorShortName("WATR(" + WATR_K + ", " + WATR_M + ")");
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator function |
//+------------------------------------------------------------------+
bool AntiTrendBar(int i)
{
bool res = (TrendUp(i) && (Close[i] < Open[i])) ||
(!TrendUp(i) && (Close[i] > Open[i]));
return(res);
}
//+------------------------------------------------------------------+
//| Custom indicator function |
//+------------------------------------------------------------------+
double CalcIndicValue(int i, bool trend)
{
double res = Close[i];
if(trend)
res -= (WATR_K*Point + WATR_M*iATR(NULL, 0, ATR, i));
else
res += (WATR_K*Point + WATR_M*iATR(NULL, 0, ATR, i));
return(res);
}
//+------------------------------------------------------------------+
//| Custom indicator function |
//+------------------------------------------------------------------+
bool TrendUp(int i)
{
return((Close[i+1] > ExtMapBufferUp[i+1]) && (ExtMapBufferUp[i+1] != EMPTY_VALUE));
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
int limit;
int counted_bars = IndicatorCounted();
//---- последний посчитанный бар будет пересчитан
// if(counted_bars > 0) counted_bars--;
//---- первое значение индикатора == цене-1 point, т.е. считает тренд восходящим
ExtMapBufferUp[Bars] = Close[Bars] - WATR_K*Point;
// limit = (counted_bars > 0) ? (Bars - counted_bars) : (Bars - 1);
limit = Bars - counted_bars;
//if(limit == Bars) limit--;
//---- основной цикл
for(int i = limit; i >= 0; i--)
{
if( AntiTrendBar(i) )
{
ExtMapBufferUp[i] = ExtMapBufferUp[i+1];
ExtMapBufferDown[i] = ExtMapBufferDown[i+1];
}
else
{
if(TrendUp(i))
{
ExtMapBufferUp[i] = CalcIndicValue(i, true);
if(ExtMapBufferUp[i] < ExtMapBufferUp[i+1])
ExtMapBufferUp[i] = ExtMapBufferUp[i+1];
ExtMapBufferDown[i] = EMPTY_VALUE;
}
else
{
ExtMapBufferDown[i] = CalcIndicValue(i, false);
if(ExtMapBufferDown[i] > ExtMapBufferDown[i+1])
ExtMapBufferDown[i] = ExtMapBufferDown[i+1];
ExtMapBufferUp[i] = EMPTY_VALUE;
}
}
// пересечения с ценой
if(TrendUp(i) && (Close[i] < ExtMapBufferUp[i]))
{
ExtMapBufferDown[i] = CalcIndicValue(i, false);
ExtMapBufferUp[i] = EMPTY_VALUE;
}
if((!TrendUp(i)) && (Close[i] > ExtMapBufferDown[i]))
{
ExtMapBufferUp[i] = CalcIndicValue(i, true);
ExtMapBufferDown[i] = EMPTY_VALUE;
}
}
return(0);
}
//+------------------------------------------------------------------+
|
Наверх
|
|
|
|
#14506 - Thu Sep 30 2010 03:00 PM
Re: Заказ индикаторов в TSLab
[Re: Djin]
|
addict
Registered: Fri Feb 12 2010
Записи: 495
Loc: Москва, Россия
|
Хотелось бы по возможности иметь под руками индикатор WATR +1. Хорошая штука, судя по описанию (pdf!) Процентный Трендовый индикатор прорыва динамического ценового канала в формате Omega TradeStation. {Percentage Trend Indicator with correction filter and dynamic period of trend calculation. Copyright (c) konkop 2001} Inputs: K(15), {%Coeff. of correction} Max_per(50); {Max. Dynamic Period for Trend Calculation} Vars: Trend(C), Period(0) ; {Trend Calculation} Condition1= C > Trend[1]; {UpTrend} Condition2= C <= Trend[1]; { DownTrend} {SetUp Period When New Trend Begin} If C Cross over Trend[1] or C Cross Below Trend[1] Then Period = 0; If Period < Max_per Then Begin {Counting UpTrends with dynamic period} If Condition1 Then Begin Period = Period +1; Trend = Highest(C,Period)[1]∗(1 — (K/100)); End ; {Counting DownTrends with dynamic period} If Condition2 Then Begin Period = Period + 1; Trend = Lowest(C,Period)[1]∗(1 + (K/100)); End; End Else Begin {Counting UpTrends with constant period} If Condition1 Then Trend = Highest(C,Max_per)[1]∗(1 — (K/100)); {Counting DownTrends with constant period} If Condition2 Then Trend = Lowest(C,Max_per)[1]∗(1 + (K/100)); End; {Plotting Indicator} Plot1(Trend, «Trend»); Трендовый индикатор прорыва динамического ценового канала на основе WATR в формате Omega TradeStation. {Volatility Trend Indicator based on Smoothed True Range and dynamic period of trend calculation. Copyright (c) konkop 2001} Inputs: Len(21), {WATR Lenght} M(3), {WATR Multiplier} Max_per(50); {Max. Dynamic Period for Trend Calculation} Vars: TrueHi(H), TrueLo(L), TrueRng(0), WATR(0), Trend(C), Period(0) ; {Calculate Smoothed TR} If Close[1] > High Then TrueHi = Close[1] Else TrueHi = High; {Calculate TrueHigh} If Close[1] < Low Then TrueLo = Close[1] Else TrueLo = Low; {Calculate TrueLow} TrueRng = TrueHi — TrueLo; {Calculate TrueRange} WATR = WAverage(TrueRng,Len); {Calculate WATR} {Trend Calculation} Condition1= C > Trend[1]; {UpTrend} Condition2= C <= Trend[1]; { DownTrend} {SetUp Period When New Trend Begin} If C Cross over Trend[1] or C Cross Below Trend[1] Then Period = 0; If Period < Max_per Then Begin {Counting UpTrends with dynamic period} If Condition1 Then Begin Period = Period +1; Trend = Highest(C,Period) — M∗WATR; End ; {Counting DownTrends with dynamic period} If Condition2 Then Begin Period = Period + 1; Trend = Lowest(C,Period) + M∗WATR; End; End Else Begin {Counting UpTrends with constant period} If Condition1 Then Trend = Highest(C,Max_Per)[1] — M∗WATR; {Counting DownTrends with constant period} If Condition2 Then Trend = Lowest(C,Max_per)[1] + M∗WATR; End; {Plotting Indicator} Plot1(Trend,»Trend»);
|
Наверх
|
|
|
|
#14509 - Thu Sep 30 2010 04:23 PM
Pivot
[Re: TrendCatcher]
|
addict
Registered: Fri Feb 12 2010
Записи: 495
Loc: Москва, Россия
|
Уровни Пивот может быть стоит сделать, как думаете? - - - - - - - - - - - - - - - - - - - - - - - Есть много вариантов расчета уровней пивот. Но самый распространенный это стандартный метод расчета pivot points. Берутся цены предыдущего дня High, Low и Close. Формула расчета простая: R2 = P + (H – L) = P + (R1 – S1) R1 = (P x 2) – L P = (H + L + C) / 3 S1 = (P x 2) – H S2 = P – (H – L) = P – (R1 – S1)В данном случае “S” – это уровни сопротивления (support), а “R” – уровни поддержки (resistnace). High, Low и Close – это “H”, “L” и “C” соответственно. - - - - - - - - - - - - - - - - - - - - - - - Есть также вариант расчета уровней пивот с учетом цены открытия сегодняшнего дня (today’s opening price): P = ((Today’s O) + Yesterday’s (H + L + C)) / 4А уровни поддержки и сопротивления (S1, S2, R1, R2) в данном случае рассчитываются так же как и в первом варианте, только с учетом “модифицированного” пивота (“P”). http://www.mql5.com/ru/code/102
|
Наверх
|
|
|
|
#15364 - Fri Oct 15 2010 11:58 PM
Re: Pivot
[Re: TrendCatcher]
|
Pooh-Bah
Registered: Wed Jan 13 2010
Записи: 1835
|
_________________________
Делаю простые вещи.
|
Наверх
|
|
|
|
#15372 - Sat Oct 16 2010 04:48 PM
Re: Pivot
[Re: Stanley]
|
Carpal Tunnel
Registered: Thu Apr 01 2010
Записи: 2564
Loc: г. Дзержинский
|
. Это не Чайкин. Этот индикатор где-то на форуме был.
Attachments
Volatility.zip (249 downloads)
Отредактировано 777 (Sat Oct 16 2010 05:07 PM)
_________________________
«Существует 3 типа лжи: ложь, наглая ложь и статистика» Дизраэли.
|
Наверх
|
|
|
|
#15382 - Sun Oct 17 2010 07:04 AM
Re: Pivot
[Re: 777]
|
enthusiast
Registered: Mon Jun 21 2010
Записи: 283
|
Большое спасибо!)А шде можно почитать интерпритацию индикатора которого вы выложили?
|
Наверх
|
|
|
|
#15383 - Sun Oct 17 2010 10:28 AM
Re: Pivot
[Re: Stanley]
|
Carpal Tunnel
Registered: Thu Apr 01 2010
Записи: 2564
Loc: г. Дзержинский
|
Большое спасибо!)А шде можно почитать интерпритацию индикатора которого вы выложили? Ай! Это и есть Чайкин : http://www.tslab.ru/ubb/ubbthreads.php?ubb=showflat&Number=8770&Searchpage=1&Main=842&Words=%2AVolatility%2A&Search=true#Post8770
_________________________
«Существует 3 типа лжи: ложь, наглая ложь и статистика» Дизраэли.
|
Наверх
|
|
|
|
#15646 - Thu Oct 21 2010 02:18 PM
Re: Pivot
[Re: 777]
|
journeyman
Registered: Wed Sep 29 2010
Записи: 51
|
Я считаю что уровни Pivot point необходимы Формула расчета Пивот Поинт Существуют великое множество уже модернизированных формул пивота, но все они имеют под собой классическую формулу пивота. Т.е сумма максимума, минимума и цены закрытия деленное на 3. Разворотный уровень Pivot =(Z+X+Close)/3 Z – максимальное значение за вчеашний день. X – минимальное значение за вчерашний день. Close - цена закрытия После того как разворотная точка посчитана, можно расчитать и второстепенные уровни поддержки, сопротивления. R1=2Pivot - Low S1=2Pivot - High R2=Pivot + (R1 - S1) S2=Pivot - (R1-S1) R3=High + 2*(Pivot - Low) S3=Low - 2*(High - Pivot) R1,R2,R3 - уровни сопротивления; S1,S2,S3 - уровни поддержки и модифицированные варианты по ссылке http://www.mql5.com/ru/code/102P.S. Считаю индикатор просто необходимым
|
Наверх
|
|
|
|
#16331 - Wed Nov 03 2010 03:58 PM
Re: Заказ индикаторов в TSLab
[Re: andy]
|
stranger
Registered: Wed Nov 03 2010
Записи: 2
|
Подскажите плз. ссылочку на AROON
|
Наверх
|
|
|
|
#16333 - Wed Nov 03 2010 04:48 PM
Re: Заказ индикаторов в TSLab
[Re: Alexander]
|
TSLab
Carpal Tunnel
Registered: Sun Oct 17 2010
Записи: 8139
|
|
Наверх
|
|
|
|
#17079 - Thu Nov 18 2010 07:58 PM
Re: Заказ индикаторов в TSLab
[Re: ViL]
|
journeyman
Registered: Thu Sep 30 2010
Записи: 89
|
Столько всяких MACD, а MACD гистограмы нету. Сделаете?
|
Наверх
|
|
|
|
#17086 - Thu Nov 18 2010 08:32 PM
Re: Заказ индикаторов в TSLab
[Re: Artem]
|
Carpal Tunnel
Registered: Thu Apr 01 2010
Записи: 2564
Loc: г. Дзержинский
|
Уже сделали Нажмите на связь, справа стиль-стиль графика ...
_________________________
«Существует 3 типа лжи: ложь, наглая ложь и статистика» Дизраэли.
|
Наверх
|
|
|
|
#17156 - Mon Nov 22 2010 10:08 AM
Re: Заказ индикаторов в TSLab
[Re: 777]
|
journeyman
Registered: Wed Jun 09 2010
Записи: 64
|
Хотелось бы классический NRTR. Может быть кто сделает :-) ...
|
Наверх
|
|
|
|
#17157 - Mon Nov 22 2010 10:09 AM
Re: Заказ индикаторов в TSLab
[Re: Alexei]
|
Pooh-Bah
Registered: Wed Jan 13 2010
Записи: 1835
|
был специалист,промахнулся один раз,так его в кипятке и сварили.
_________________________
Делаю простые вещи.
|
Наверх
|
|
|
|
#17158 - Mon Nov 22 2010 10:11 AM
Re: Заказ индикаторов в TSLab
[Re: profit]
|
journeyman
Registered: Wed Jun 09 2010
Записи: 64
|
был специалист,промахнулся один раз,так его в кипятке и сварили. Люди иногда бывают очень странные ... Но индикатор действительно очень интересный. Умел бы программить, сделал бы его. А на базе стандартных блоков у меня не получается его создать.
|
Наверх
|
|
|
|
#17215 - Tue Nov 23 2010 06:45 PM
Re: Заказ индикаторов в TSLab
[Re: DieZ]
|
Pooh-Bah
Registered: Wed Jan 13 2010
Записи: 1835
|
Толку то смотреть.Здесь ни кто ничего больше не делает.Эту ветку вообще можно удалить уже. Своих идей не мало.Не кому реализовывать.
_________________________
Делаю простые вещи.
|
Наверх
|
|
|
|
#17240 - Wed Nov 24 2010 08:20 AM
Re: Заказ индикаторов в TSLab
[Re: profit]
|
journeyman
Registered: Wed Jun 09 2010
Записи: 64
|
Толку то смотреть.Здесь ни кто ничего больше не делает.Эту ветку вообще можно удалить уже. Своих идей не мало.Не кому реализовывать. Все кому надо научились и все? Или почему?
|
Наверх
|
|
|
|
#17241 - Wed Nov 24 2010 09:57 AM
Re: Заказ индикаторов в TSLab
[Re: Alexei]
|
Pooh-Bah
Registered: Wed Jan 13 2010
Записи: 1835
|
Кому надо как раз таки не умеют либо некогда а кто умеет тому не надо и тоже некогда.Вот такой вот порочный круг получается. А вообще просто нет специалиста в тслаб который бы этим занимался.
_________________________
Делаю простые вещи.
|
Наверх
|
|
|
|
|
|