
Эта стратегия объединяет анализ кумулятивной дельты, свечи Heikin Ashi, скользящие средние и индикаторы волатильности. Основная идея — не пытаться угадать каждое движение рынка, а дождаться формирования направленного тренда и входить в сделку, когда движение подтверждается дополнительными фильтрами.
Как работает стратегия
В основе индикаторной части лежит кумулятивная дельта. Она накапливает изменения цены и отображается в виде линии или свечей. По умолчанию расчёт начинается заново в 09:00, что позволяет отслеживать движение внутри торговой сессии. Дополнительно стратегия распределяет объём свечей между условными покупками и продажами в зависимости от направления расчётной дельты.
Для более наглядного отображения движения можно использовать Heikin Ashi. Такие свечи сглаживают рыночный шум и помогают лучше видеть моменты, когда движение набирает силу или начинает затухать.
На графике также доступны SMA 14 и 28, а также EMA 12 и 26. Они помогают оценивать динамику и визуально сравнивать краткосрочные изменения с более плавным движением расчётной линии.

Индекс NASDAQ Comp, как и S&P 500, находится на крайне длительном подъёме, ещё больше ускорив его совсем недавно. На это указывает нахождение цен далеко за границей долгосрочной линии сопротивления, среднесрочный (2 месяца) канал тренда с ещё более резким наклоном и восходящий треугольник, проведенный за последние две недели.

EMA 50 и 200 (не на графике) оба находятся на длительном подъёме. MACD, подав сигнал к продаже 9 июня, продолжает своё падение. Прямо сейчас цены располагаются между EMA 20 и SD1 Bollinger Bands, что указывает на ослабление тренда подъёма, хотя в последний день произошёл небольшой прорыв за границу SD1. На ослабление тренда также указывает падающий ADX. Сигнал продаже выдаёт ещё стохастический осциллятор, к которому при убывающем ADX стоит относиться с большим вниманием.


Валютная пара доллар-рубль продолжает медвежий тренд. Накануне мы видели довольно примечательное событие: котировки встрепенулись и пошли вверх. На этом фоне активизировались продавцы. Им предоставилась возможность подороже продать свои контракты, и они утрамбовали рынок до новых минимумов.

+DI = Round( ( +DM / TR ) * 100 )
where,
DI+ = DIPlus
TR = True Range of current bar
The +DI is then smoothed over the period specified, the same way as a simple moving average, and +DM is calculated as follows:
(i) For up trending days, +DM = today's high — yesterday's high
(ii) For down trending days, +DM = zero
(iii) For inside days, +DM = zero
(iv) For outside days, if today's high — yesterday's high, is greater than yesterday's low- today's low, then +MD = today's high — yesterday's high, otherwise +DM = zero
(v) For upwards gap days, +DM = today's high — yesterday's high
(vi) For downwards gap days, +DM = zero
function MyDXPluse(Period: integer): integer;
begin
var BarSys,pDM,mDM,pDMA,mDMA,ATRA,R: integer;
var dHigh,dLow: float;
pDM := CreateSeries();
mDM := CreateSeries();
mDMA := CreateSeries();
pDMA := CreateSeries();
Result:= CreateSeries();
R:= CreateSeries();
for BarSys := Period to BarCount - 1 do
begin
dHigh := @#High[BarSys] - @#High[BarSys-1];
dLow := @#Low[BarSys-1] - @#Low[BarSys];
if ((dHigh < 0) and (dLow < 0)) or (dHigh=dLow) then begin
SetSeriesValue( BarSys,pDM,0);
SetSeriesValue( BarSys,mDM,0);
end;
if (dHigh > dLow) then begin
SetSeriesValue( BarSys, pDM,dHigh);
SetSeriesValue( BarSys, mDM, 0);
end;
if (dHigh < dLow) then begin
SetSeriesValue( BarSys, pDM,0);
SetSeriesValue( BarSys, mDM,dLow);
end;
end; //for
{
pDMA:= WilderMASeries(pDM,Period);
mDMA:= WilderMASeries(mDM,Period);
ATRA := ATRSeries(Period);
}
ATRA := TrueRangeSeries();
for BarSys := Period to BarCount() - 1 do begin
SetSeriesValue( BarSys, R, Round( 100 * (@pDM[BarSys] / @ATRA[BarSys])));
end; //for
Result := WilderMASeries(R,Period);
end; //function
//--------------------------------------------------------------------------------
var x : integer = MyDXPluse(7);
var xPane: integer = CreatePane( 75, true, true );
PlotSeriesLabel( x, xPane, 009, #Thick, 'MyDXPluse Plot' );
