Механик Рынка
Механик Рынка личный блог
18 марта 2021, 05:36

Новая система..Или на заметку кодерам

Привет всем мне как всегда Скучно жить..
Новая система..Или на заметку кодерам


Математическая система работает на ура..
Решил залезть в дебри кодирования..
Смотрим у нас формула хай+лоу делим на 2
А почему на 2 подумал… А да баланс 50% и всё такое(НИФИГА)
По моей системе цент тяжести(баланс)нифига не 50% а 55%..
Поэтому смотрим..

//------------------------------------------------------------------
#property copyright «www.forex-tsd.cm»
#property link «www.forex-tsd.cm»
//------------------------------------------------------------------
#property indicator_chart_window
#property indicator_buffers 3
#property indicator_color1 LimeGreen
#property indicator_color2 DarkGray
#property indicator_color3 PaleVioletRed
#property indicator_style1 STYLE_DOT
#property indicator_style2 STYLE_DOT
#property indicator_style3 STYLE_DOT

//
//
//
//
//

extern bool HighLowVisible = false;
extern int Shift = 0;
double bandUp[];
double bandMi[];
double bandDn[];

//------------------------------------------------------------------
//
//------------------------------------------------------------------
//
//
//
//
//

int init()
{
int style = DRAW_LINE; if (!HighLowVisible) style = DRAW_NONE;
SetIndexBuffer(0,bandUp); SetIndexStyle(0,style);
SetIndexBuffer(1,bandMi);
SetIndexBuffer(2,bandDn); SetIndexStyle(2,style);
return(0);
}
int deinit()
{
return(0);
}

//
//
//
//
//

int start()
{
int counted_bars=IndicatorCounted();
if(counted_bars < 0) return(-1);
if(counted_bars>0) counted_bars--;
int limit = MathMin(Bars-counted_bars,Bars-1);
int day = TimeDayOfYear(Time[0]);
for (;limit<Bars-1; limit++) if (TimeDayOfYear(Time[limit])!=day) break;

//
//
//
//
//

for(int i = limit; i >= 0; i--)
{
int y = iBarShift(NULL,PERIOD_D1,Time[i])+Shift;
bandUp[i] = iHigh(NULL,PERIOD_D1,y);
bandDn[i] = iLow(NULL,PERIOD_D1,y);
bandMi[i] = (bandUp[i]+bandDn[i])/2.0;
}
return(0);
}

50% это 
Коэффициент 2.0
сдвигаем цент 

int y = iBarShift(NULL,PERIOD_D1,Time[i])+Shift;
bandUp[i] = iHigh(NULL,PERIOD_D1,y);
bandDn[i] = iLow(NULL,PERIOD_D1,y);
bandMi[i] = (bandUp[i]+bandDn[i])/2.0055;
 

получаем пулю со смещённым центром тяжести)))
простым языком обманываем алгоритм на каких то 0055
Что получаем ?
Получаем некий спред смещённый смотрим скрин
Новая система..Или на заметку кодерам

То есть между реальным центром и смещённым
Значит увеличивая коэффициент 
к примеру 

int y = iBarShift(NULL,PERIOD_D1,Time[i])+Shift;
bandUp[i] = iHigh(NULL,PERIOD_D1,y);
bandDn[i] = iLow(NULL,PERIOD_D1,y);
bandMi[i] =(bandUp[i]+bandDn[i])/2.0199;

я получу некий канал разворота цены… Спредовый канал, как хотите так назовите..
смотрим
Новая система..Или на заметку кодерам
То есть я на открытии дня уже точно буду 
знать куда мне вставать в какую сторону..
+ коррекция к
 bandMi[i] = (bandUp[i]+bandDn[i])/2.0199

Риск минимальный в % соотношении Вы сами видите
2.0 с чего начали-это 50%
2.0055 это смещённый центр тяжести (Пуля ёпрст)
2.0199 это  смещенный канал… потому как на открытии
я примерно увижу вот такую картину 
Новая система..Или на заметку кодерам
Если вот так тут и так всё понятно
Новая система..Или на заметку кодерам
Профитов всем
и прошу высказаться особенно кодеров


 



16 Комментариев
  • Виталий
    18 марта 2021, 07:38
    работают нестандартные вещи!
  • Владимиров Владимир
    18 марта 2021, 08:21
       Такой подход фактически полагает следующее: цена будет ходить в диапазоне +-5%, а при выходе из этого диапазона будет смена направления движения. Это будет работать тогда, когда ЦЕНА В БОКОВИКЕ ХОДИТ ВВЕРХ-ВНИЗ НА 5%, но это ведь ОЧЕНЬ ЧАСТНЫЙ СЛУЧАЙ. В общем случае такой подход ничего не даст. Например, боковик в диапазоне больше 5%; или тренд в любую сторону.
        Нельзя задавать в ручную количественные ограничения (константы) при расчете движения цены (кроме стоп-лоссов, но и их надо корректировать). Если используешь константы — однозначно получаешь частный случай движения цены, для которого эта константа подходит.  
      • Владимиров Владимир
        18 марта 2021, 08:56
        Firetrade, Стопы здесь не причем. Почему не даст — написано в первом абзаце моего комментария выше.
           А проверить, конечно, нужно. Но один или несколько дней — это не показатель. Проверить надо хотя бы на 2 — 3 летнем периоде по истории. 
          • Владимиров Владимир
            18 марта 2021, 09:19
            Firetrade, 5% взял из текста: «По моей системе центР тяжести(баланс)нифига не 50% а 55%..».
               Кстати, о внимательности: в слове центр в тексте пропущена буква «р». В цитате букву «Р» вставил я.   ))))
              
                Но дело не значении константы — не важно 0,5%, 5%, или 8%… — любая константа, заданная изначально, вносит ограничение в расчет. 
               В другом месте текста использовано: "bandMi[i] =(bandUp[i]+bandDn[i])/2.0199". Здесь опять используется константа:   2,0199. 

               Когда берется (H+L)/2 — это классическое усреднение, и цифра 2 в этом случае не константа, а количество усредняемых значений. Если есть желание поменять в этой формуле цифру 2 на иную, то надо понимать, что это автоматически меняет вес используемых H и L (придавая большую важность одному значению, и уменьшая важность другого значения). А следовательно — этим самым изначально предполагается направление дальнейшего движения цены и характер этого движения.  
              • Владимиров Владимир
                18 марта 2021, 10:20
                Firetrade, Можно уточнить — в чем я не прав? Чтобы понимать основу дискуссии. А вообще — я всегда за плюрализм мнений. Человеку свойственно ошибаться. Главное — уметь признавать и осознавать ошибки. 
                   Спасибо за доверие — насчет номера телефона.
                   Давайте сначала поймем суть разногласия.  
  • wrmngr
    18 марта 2021, 10:16
    Кодеры коммитят очередной багфикс в гитхаб для кровавого энтерпрайза, некогда им ерундой заниматься
  • SergeyJu
    18 марта 2021, 10:40
    «Центр тяжести» можно так посчитать: H*w1+L*w2, где w1+w2=1.
    «Смещайте» себе на здоровье
  • Дмитрий Овчинников
    18 марта 2021, 18:58
    for (;limit<Bars-1; limit++) if (TimeDayOfYear(Time[limit])!=day) break;
    Здесь пропущен первый операнд в функции «for»

    Вообще выкладывать неотформатированный код без комментариев и с переменными, названными «y», это какая-то фубля ©.

    По сути сказать нечего.
  • Дмитрий
    19 марта 2021, 01:12
    1. Зачем хай/лоу в буфера?
    2. Почему не ATR? Для определения границ? Или торговля в сторону пробоя канала? Опять же чего б не добавить ATR как цель

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн