Jump to content
Ugar68

Калькулятор корреляции символов

Recommended Posts

Ratamahatta
5 часов назад, NewAlex сказал:

для арбитража надо рассматривать три пары (треугольник). В идеале он сбалансирован

В идеале это не так. В идеале нужно рассматривать некий многоугольник

Share this post


Link to post
Share on other sites
NewAlex
6 часов назад, NewAlex сказал:

для арбитража надо рассматривать три пары (треугольник). В идеале он сбалансирован: если правльно высчитать размеры лотов и одновременно открыть три позиции, то вы всегда будете в 0 (если игнорировать спреды, свопы и т.д.). На практике иногда возникает арбитражная ситуация

как соотношения экономик разных стран влияют на стабильно нулевой (или почти нулевой) профит?

  • Upvote 1

Share this post


Link to post
Share on other sites
NewAlex
6 часов назад, Ratamahatta сказал:

нужно рассматривать некий многоугольник

поясните? :) ...нет, не так, я не спорю - многоугольник тоже подойдет, чем треугольник плох?

или вы к тому, что в многоугольнике вариантов для арбитража больше?

Share this post


Link to post
Share on other sites
Ratamahatta
1 минуту назад, NewAlex сказал:

поясните?

кросс-курс, к примеру EURGBP, зависит не только от двух валют EUR и GBP выраженных через доллар, на кросс-курс также оказывают влияние и другие валюты, поэтому и "многоугольник". Проблема в том, что точную формулу "многоугольника" Вам вряд ли найти ! В общем все не так просто как кажется на первый взгляд...

Share this post


Link to post
Share on other sites
NewAlex
6 часов назад, Ratamahatta сказал:
6 часов назад, NewAlex сказал:

 

кросс-курс, к примеру EURGBP, зависит не только от двух валют EUR и GBP выраженных через доллар

смело ))  я до сих пор считал (и пока считаю), что именно так ("только"), причем неважно - через доллар или что-то другое, эта валюта как бы "взаимно сокращается". Это доказывает практика - суммарный профит при открытии 3 позиций близок к нулю. Отклонение от нуля - арбитражная (ненормальная) ситуация, возникновение которой сложно поддается анализу, имхо. Ноль - здесь нормальное сотояние, как на него могут оказывать влияние другие валюты, я не понимаю. Если говорить о том, что как раз арбитражные ситуации (т.е. отклонение от нуля) являются следствием движения других валютных пар, то это сложнодоказуемо и сложновычисляемо, т.е. практической пользы от веры в это - немного :)  

...Можно и через многоугольник - через цепочку пар с одинаковой валютой. Формулу, имхо, достаточно легко вывести. Вот только зачем? Опять же, имхо, потенциально больше возможностей для возникновения арбитражных ситуаций... но и больше суммарный спред и своп. С другой стороны, любой многоугольник разбивается на набор треугольников, в каждом из которых суммарные спреды/свопы все же меньше, чем в многоугольнике.

Share this post


Link to post
Share on other sites
Ratamahatta
7 часов назад, NewAlex сказал:

Отклонение от нуля - арбитражная (ненормальная) ситуация, возникновение которой сложно поддается анализу

Поэтому ситуация "ненормальна" для Вас, а для меня она как раз таки нормальна, как и ее возникновение

7 часов назад, NewAlex сказал:

т.е. практической пользы от веры в это - немного :)  

Для меня это просто факт и уж никак не вера. *** п.15 правил форума *** Как это использовать и использовать ли вообще решать Вам.

7 часов назад, NewAlex сказал:

Формулу, имхо, достаточно легко вывести.

Да, да, особенно когда в ней содержится много переменных, которые сами по себе неизвестны. AntFX писал про "чистые" индексы, в них и ответ!

 

ЗЫ. Я не пытаюсь спорить!

Edited by AntFX
п. 1,15

Share this post


Link to post
Share on other sites
NewAlex

Ratamahatta, сожалею, если привнес какой-либо негатив, такой цели не было. Тема арбитража мне интересна, я буду только рад, если получу какую-либо новую идею, даже если мне придется признать, что я в корне был не прав. Как мог, пытался аргументировать свою позицию, насколько успешно - Вам судить. Ваша аргументация достаточно лаконична, и, в любом случае, мне непонятна.

5 часов назад, Ratamahatta сказал:

в ней содержится много переменных, которые сами по себе неизвестны

Наверно, мы о разном говорим: при такой формулировке уравнение заведомо нерешаемо, значит, обсуждать это не конструктивно.

Если есть система из n уравнений и n неизвестных (что бы это ни было, я так и не понимаю, о чем речь) - наоборот, все решается стандартно (если линейные).

 

Я же говорил о достаточно простом случае, когда стратегию треугольника расширяют до многоугольника, но, похоже, Вы не это имели в виду.

Share this post


Link to post
Share on other sites
AntFX

А смысл то в итоге какой? торговля по типу тренда, или импульса, или MR? Кол-во компонентов в синтетике это, по-моему, дело десятое. Если действительно речь не об арбитраже (который по определению не возможен на ритейл форексе - близкие "к телу" к стакану банки и ECN Вас в любом случае будут обгонять)

Edited by AntFX

1

Share this post


Link to post
Share on other sites
NewAlex
13 минут назад, AntFX сказал:

А смысл то в итоге какой?

я не уловил :(

я об арбитраже говорил, только у меня не "по определению" получалось, а из-за спредов/свопов и невозможности четко выставить размер лотов при маленьком депо.

Подозреваю, что дело в демке. Наверно, как раз тут суперкритично - демка или реал (с учетом "близкие "к телу" к стакану банки и ECN Вас в любом случае будут обгонять")... или на демке так же достоверно симулируется поведение рынка?

что можно полезного сделать с корреляцией (если в рамках одной площадки) - так и не понял.

это тоже результат - меньше времени потрачу в этом направлении.

Share this post


Link to post
Share on other sites
AntFX
5 минут назад, NewAlex сказал:

я об арбитраже говорил, только у меня не "по определению" получалось, а из-за спредов/свопов и невозможности четко выставить размер лотов

Ну это Вы так думаете- а я все это вместе называю "по определению", потому что HFT - недоступная априори для клиентов "медленных" посредников типа FX-брокеров, являющихся (в лучшем случае) прослойкой между маркетмейкерами и конечными клиентами. Единственный реальный всем известный пример - хренфх (в конторе название которой нельзя называть, разумеется), у которого получалось нечто подобное лишь потому, что там была реализована псевдо-ECN со свойствами, приближенными к реальной, которые он, видимо, успешно проэксплуатировал. В наших условиях подобные инициативы даже обсуждать бесполезно - это не реализуемо в принципе и по определению.  Ну здесь даже стакана нет- о каком арбитраже Вы говорите... :cry:

Edited by AntFX

1

Share this post


Link to post
Share on other sites
Ugar68

Вы наверное о разных арбитражах. Статистический арбитраж это совсем не то что арбитражить медленного брокера и пытаться выудить из этих опаздываний прибыль.


Пишу советники и индикаторы по вашим алгоритмам. Пишите в личку.
Чужие программы не переделываю.

Share this post


Link to post
Share on other sites
Ratamahatta
13 часов назад, AntFX сказал:

А смысл то в итоге какой?

Да в принципе никакого! Собрались, бла-бла-бла. Я лишь о том говорил, что, к примеру, продажа EURGBP это не тоже самое, что продажа EURUSD и покупка GBPUSD, но некоторые, по незнанию, ищут в этом какие-то "арбитражи" и пытаются на этом заработать (иногда получается!).

Share this post


Link to post
Share on other sites
AntFX
7 часов назад, Ugar68 сказал:

Вы наверное о разных арбитражах. Статистический арбитраж это совсем не то что арбитражить медленного брокера и пытаться выудить из этих опаздываний прибыль.

Вы наверное меня не поняли На ECN в принципе не может быть никакой задержки котировок, потому что она сама является её источником.


1

Share this post


Link to post
Share on other sites
AntFX
4 часа назад, Ratamahatta сказал:

Я лишь о том говорил, что, к примеру, продажа EURGBP это не тоже самое, что продажа EURUSD и покупка GBPUSD

К сожалению для Вас, это абсолютно то же самое. Если считаете, что это не так, не продолжайте это самое "блаблабла", а докажите. 

Контракт EURGBP составляет 100000 EUR, на которые "покупаются" 87825 GBP , поэтому для построения синтетического кросса, полностью идентичного EURGBP, нужно продать 1 лот EURUSD и купить ~0.88 лотов GBPUSD. При этом синтетический инструмент будет двигаться идентично базовому кроссу EURGBP, с небольшими отклонениями вверх-вниз в пределах спреда, и с поправкой на неточность лотов, поскольку сделать лот 0.87825 и докупать/продавать по 0.00001 лота невозможно.

Edited by AntFX

1

Share this post


Link to post
Share on other sites
Mighty Mouse
В 04.10.2018 в 07:54, AntFX сказал:
  Показать

 



//+------------------------------------------------------------------+
//|                                                        iRCCI.mq5 |
//|                                             Copyright AntFX 2018 |
//|                              https://www.mql5.com/en/users/AntFX |
//+------------------------------------------------------------------+
//#include <antfx_mt5_900.mqh>

#property copyright "Copyright AntFX 2018"
#property link      "https://www.mql5.com/en/users/AntFX"
#property version   "1.00"
#property indicator_separate_window

#property indicator_buffers 8
#property indicator_plots 8

#property indicator_label1 "USD"
#property indicator_type1  DRAW_LINE
#property indicator_style1 STYLE_SOLID
#property indicator_color1 clrBlue
#property indicator_width1 1

#property indicator_label2 "EUR"
#property indicator_type2  DRAW_LINE
#property indicator_style2 STYLE_SOLID
#property indicator_color2 clrYellow
#property indicator_width2 1

#property indicator_label3 "GBP"
#property indicator_type3  DRAW_LINE
#property indicator_style3 STYLE_SOLID
#property indicator_color3 clrCyan
#property indicator_width3 1

#property indicator_label4 "CHF"
#property indicator_type4  DRAW_LINE
#property indicator_style4 STYLE_SOLID
#property indicator_color4 clrRed
#property indicator_width4 1

#property indicator_label5 "JPY"
#property indicator_type5  DRAW_LINE
#property indicator_style5 STYLE_SOLID
#property indicator_color5 clrWhite
#property indicator_width5 1

#property indicator_label6 "AUD"
#property indicator_type6  DRAW_LINE
#property indicator_style6 STYLE_SOLID
#property indicator_color6 clrGreen
#property indicator_width6 1

#property indicator_label7 "CAD"
#property indicator_type7  DRAW_LINE
#property indicator_style7 STYLE_SOLID
#property indicator_color7 clrOrange
#property indicator_width7 1

#property indicator_label8 "NZD"
#property indicator_type8 DRAW_LINE
#property indicator_style8 STYLE_SOLID
#property indicator_color8 clrMagenta
#property indicator_width8 1

#define USD 0
#define EUR 1
#define GBP 2
#define CHF 3
#define JPY 4
#define AUD 5
#define CAD 6
#define NZD 7

input int extFastPeriod=60;
input int extSlowPeriod=15;
input bool extUSD=true;
input bool extEUR=true;
input bool extGBP=true;
input bool extCHF=true;
input bool extJPY=true;
input bool extAUD=true;
input bool extCAD=true;
input bool extNZD=true;
input uint extBars=1000;

double usd_buf[], eur_buf[], gbp_buf[], chf_buf[], jpy_buf[], aud_buf[], cad_buf[], nzd_buf[];

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
   if(extBars==0){
      Print("Set extBars to positive!");
      return(INIT_FAILED);
   }
//--- indicator buffers mapping
   SetIndexBuffer(USD, usd_buf);
   SetIndexBuffer(EUR, eur_buf);
   SetIndexBuffer(GBP, gbp_buf);
   SetIndexBuffer(CHF, chf_buf);
   SetIndexBuffer(JPY, jpy_buf);
   SetIndexBuffer(AUD, aud_buf);
   SetIndexBuffer(CAD, cad_buf);
   SetIndexBuffer(NZD, nzd_buf);
   
   ArraySetAsSeries(usd_buf, true);
   ArraySetAsSeries(eur_buf, true);
   ArraySetAsSeries(gbp_buf, true);
   ArraySetAsSeries(chf_buf, true);
   ArraySetAsSeries(jpy_buf, true);
   ArraySetAsSeries(aud_buf, true);
   ArraySetAsSeries(cad_buf, true);
   ArraySetAsSeries(nzd_buf, true);
   
   IndicatorSetInteger(INDICATOR_DIGITS, 0);
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
   static datetime last_bar=0;
   if(iTime(Symbol(), Period(), 1)==last_bar)   return(rates_total);
   if(prev_calculated==0){
      Comment("Start loading of data...");
   }
   if(rates_total<(int)extBars){
      Comment("RATES TOTAL = ", rates_total);
      return(prev_calculated);
   }
   bool sync=true;
   for(int i=0; i<8; i++)
      for(int j=(8-2); j>=0; j--)
         if(i!=j){
            string sym=GetPairName(i, j);
//            Comment("Синхронизируем ",sym);
            if(IsStopped()){
               return(prev_calculated);
            }
            if(/*!IsSync(sym, PERIOD_CURRENT) || */
               _ind(iMA(sym, PERIOD_CURRENT, extFastPeriod, 0, MODE_SMA, PRICE_CLOSE), 0, 1)==EMPTY_VALUE
            || _ind(iMA(sym, PERIOD_CURRENT, extSlowPeriod, 0, MODE_SMA, PRICE_CLOSE), 0, 1)==EMPTY_VALUE){
               Comment("Ждем синхронизации символов...", sym);
               sync=false;
            }
         }
   if(!sync)   return(prev_calculated);
   Comment("");//Синхронизация прошла успешно");
//---
   for(int j=(fmax(1, rates_total-prev_calculated-1))-1; j>=0; j--){
      if(j<=0 || j>=(int)extBars){
         usd_buf[j]=EMPTY_VALUE;
         eur_buf[j]=EMPTY_VALUE;
         gbp_buf[j]=EMPTY_VALUE;
         chf_buf[j]=EMPTY_VALUE;
         jpy_buf[j]=EMPTY_VALUE;
         aud_buf[j]=EMPTY_VALUE;
         cad_buf[j]=EMPTY_VALUE;
         nzd_buf[j]=EMPTY_VALUE;
         continue;
      }
      usd_buf[j]=extUSD?GetIndexOf(usd_buf[j+1]==EMPTY_VALUE?1.0:usd_buf[j+1], USD, j):EMPTY_VALUE;
      eur_buf[j]=extEUR?GetIndexOf(eur_buf[j+1]==EMPTY_VALUE?1.0:eur_buf[j+1], EUR, j):EMPTY_VALUE;
      gbp_buf[j]=extGBP?GetIndexOf(gbp_buf[j+1]==EMPTY_VALUE?1.0:gbp_buf[j+1], GBP, j):EMPTY_VALUE;
      chf_buf[j]=extCHF?GetIndexOf(chf_buf[j+1]==EMPTY_VALUE?1.0:chf_buf[j+1], CHF, j):EMPTY_VALUE;
      jpy_buf[j]=extJPY?GetIndexOf(jpy_buf[j+1]==EMPTY_VALUE?1.0:jpy_buf[j+1], JPY, j):EMPTY_VALUE;
      aud_buf[j]=extAUD?GetIndexOf(aud_buf[j+1]==EMPTY_VALUE?1.0:aud_buf[j+1], AUD, j):EMPTY_VALUE;
      cad_buf[j]=extCAD?GetIndexOf(cad_buf[j+1]==EMPTY_VALUE?1.0:cad_buf[j+1], CAD, j):EMPTY_VALUE;
      nzd_buf[j]=extNZD?GetIndexOf(nzd_buf[j+1]==EMPTY_VALUE?1.0:nzd_buf[j+1], NZD, j):EMPTY_VALUE;
//      if(j==1){
//         IndicatorSetString(INDICATOR_SHORTNAME,"RCCI:"+" USD="+_dts(usd_buf[1])+" EUR="+_dts(eur_buf[1])+" GBP="+_dts(gbp_buf[1])+
//            " CHF="+_dts(chf_buf[1])+" JPY="+_dts(jpy_buf[1])+" AUD="+_dts(aud_buf[1])+" CAD="+_dts(cad_buf[1])+" NZD="+_dts(nzd_buf[1]));
//      }
   }
//--- return value of prev_calculated for next call
   last_bar=iTime(Symbol(), Period(), 1);
   return(rates_total);
  }
//+------------------------------------------------------------------+

double GetIndexOf(double prev, int cur, int bar){
   double index=1;
//   if(extBars==5123 && (iTime(Symbol(), PERIOD_CURRENT, bar)==D'2018.06.13 20:30' || iTime(Symbol(), PERIOD_CURRENT, bar)==D'2018.06.13 20:45' || iTime(Symbol(), PERIOD_CURRENT, bar)==D'2018.06.13 21:00')){
//      Print("Time=",_tts(iTime(Symbol(), PERIOD_CURRENT, bar))," prev=",_dtsd(prev));
//   }
   for(int i=0; i<8; i++){
      if(cur==i)  continue;
      string pair=GetPairName(cur, i);
      int bar0=iBarShift(pair, PERIOD_CURRENT, iTime(Symbol(), PERIOD_CURRENT, bar));
      if(bar0<0){
         Print("Bar at time ",TimeToString(iTime(Symbol(), PERIOD_CURRENT, bar))," not found for ",pair);
         return(prev);
      }
      int bar1=iBarShift(pair, PERIOD_CURRENT, iTime(Symbol(), PERIOD_CURRENT, bar+1));
      if(bar1<0){
         Print("Bar at time ",TimeToString(iTime(Symbol(), PERIOD_CURRENT, bar+1))," not found for ",pair);
         return(prev);
      }
//      if(extBars==5123 && (iTime(Symbol(), PERIOD_CURRENT, bar)==D'2018.06.13 20:30' || iTime(Symbol(), PERIOD_CURRENT, bar)==D'2018.06.13 20:45' || iTime(Symbol(), PERIOD_CURRENT, bar)==D'2018.06.13 21:00')){
//         Print("Adding pair ",pair," with Close0= ",_dtsd(iClose(pair, PERIOD_CURRENT, bar0))," and Close1=",_dtsd(iClose(pair, PERIOD_CURRENT, bar1))," = ",_dts((iClose(pair, PERIOD_CURRENT, bar0) / iClose(pair, PERIOD_CURRENT, bar1)-1)*10000, 2)+"%");
//      }

// !!!
//      double change=(iClose(pair, PERIOD_CURRENT, bar1)==0?1.0:iClose(pair, PERIOD_CURRENT, bar0) / iClose(pair, PERIOD_CURRENT, bar1));
      ResetLastError();
      int h_ma_slow=iMA(pair, PERIOD_CURRENT, extSlowPeriod, 0, MODE_SMA, PRICE_CLOSE);
      int h_ma_fast=iMA(pair, PERIOD_CURRENT, extFastPeriod, 0, MODE_SMA, PRICE_CLOSE);
      double ma_slow=0, ma_fast=0;
      if(h_ma_slow!=INVALID_HANDLE && h_ma_fast!=INVALID_HANDLE){
         ma_slow=_ind(h_ma_slow, 0, bar);
         ma_fast=_ind(h_ma_fast, 0, bar);
      }
      double change=(ma_fast==0?1.0:ma_slow / ma_fast);

      if(StringFind(pair, CurName(cur))>1){
         change=1/change;
      }
      index*=change;
   }
//   if(extBars==5123 && (iTime(Symbol(), PERIOD_CURRENT, bar)==D'2018.06.13 20:30' || iTime(Symbol(), PERIOD_CURRENT, bar)==D'2018.06.13 20:45' || iTime(Symbol(), PERIOD_CURRENT, bar)==D'2018.06.13 21:00')){
//     Print("Resulting value is ",_dtsd(prev * (MathPow(index, 1.0/7))));
//   }
//   return(prev * (MathPow(index, 1.0/7)));
   return(100000*(MathPow(index, 1.0/7)-1));
}

string GetPairName(int base, int quote){
   string name=CurName(base)+CurName(quote);
   if(!SymbolSelect(name, true)){
      name=CurName(quote)+CurName(base);
      if(!SymbolSelect(name, true)){
         Print("Cannot find pair for ", CurName(base)," and ",CurName(quote),"!");
         double a=10;
         double b=a;
         Print(1/(b-a));
      }
   }
   return(name);
}

string CurName(int cur){
   switch(cur){
      case USD: return("USD"); break;
      case EUR: return("EUR"); break;
      case GBP: return("GBP"); break;
      case CHF: return("CHF"); break;
      case JPY: return("JPY"); break;
      case AUD: return("AUD"); break;
      case CAD: return("CAD"); break;
      case NZD: return("NZD"); break;
   }
   return("XXX");
}

double _ind(int hnd, int _buf, int index, double empty=EMPTY_VALUE){
   if(index < 0) return(EMPTY_VALUE);
   double Arr[];
   return(CopyBuffer(hnd, _buf, index, 1, Arr)==1?Arr[0]:empty);
}

 

 

 

Это не индексы валют, а индексы их относительного изменения на основе усредненных отношений быстрых и медленных МА на данном ТФ по доступным для них кроссам. Relative Currencies Change Index - RCCI

Наведите курсор мыши на конкретную линию индикатора в нижнем окне, чтобы увидеть название сопоставленной ей валюты.

 

 

Для четверки есть версия этого скрипта?

Share this post


Link to post
Share on other sites
AntFX
9 минут назад, Mighty Mouse сказал:

Для четверки есть версия этого скрипта?

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

Впрочем здесь можно скачать для четверки что-то довольно близкое по логике. 

Edited by AntFX

1

Share this post


Link to post
Share on other sites
Mighty Mouse
10 часов назад, AntFX сказал:

Это не скрипт, а индикатор,

 

Да, я не правильно выразился. 

 

10 часов назад, AntFX сказал:

если его и можно как-то применить практически в торговле

 

Бегло посмотрел, инд-р показывает очевидное - если направления движения валют расходятся, на кроссе начинается сильное движение. Для этого не нужно код писать, достаточно на графике посмотреть растет или падает торгуемая за бакс пара и где она находится в кроссе - числителе или знаменателе. По идее можно  допилить этот ин-р для вычисления разницы средних каждой пары и посмотреть показывает ли она дивергенции как гистограмма MACD. Не совсем только понял зачем автор вычисляет два мувинга одной и той же пары, а потом один делит на другой.

Share this post


Link to post
Share on other sites
AntFX
26 минут назад, Mighty Mouse сказал:

Бегло посмотрел, инд-р показывает очевидное - если направления движения валют расходятся, на кроссе начинается сильное движение. Для этого не нужно код писать, достаточно на графике посмотреть растет или падает торгуемая за бакс пара и где она находится в кроссе - числителе или знаменателе.

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

26 минут назад, Mighty Mouse сказал:

Не совсем только понял зачем автор вычисляет два мувинга одной и той же пары, а потом один делит на другой.

Чтобы избавиться от абсолютных значений и придти к относительным, в которых удобнее сравнивать силу тренда на разных парах. В идеале ещё и на ATR нормализовать их надо, но до этого у меня руки не дошли. Не сказать, чтобы я сам сильно верил в перспективность подобной торговли... По моему опыту лучшие результаты как раз показывают наиболее "специфичные" системы, заточенные под конкретные символы и условия, а попытки построить "универсальную систему для любого рынка" ничем обычно не заканчиваются, кроме очередного мартина и пересидки.

Edited by AntFX

1

Share this post


Link to post
Share on other sites
Mighty Mouse
24 минуты назад, AntFX сказал:

никак не поможет определить где дергается сам доллар

 

Доллар тут при чем? Если речь про кросс, его там нет по определению, а поведение каждой пары сугубо индивидуальное, даже если между ними сильные корреляции есть. Например в пятницу фунт против бакса вырос, а евро нет, как результат EURGBP упал сложившимся домкратом. 

 

34 минуты назад, AntFX сказал:

а где вторая валюта, в то время как индекс это будет хорошо показывать

 

Индекс запаздывает и показывает прошлое, какой с этого толк? Пока идея его использования только одна - смотреть изменение производной как на обычном осцилляторе.

 

37 минут назад, AntFX сказал:

нужно одновременно смотреть и сравнивать 8 окон с графиками

 

Лично меня интересуют только будущие цены, точнее возможные области их значений. Если я вижу что за бакс движение шло, а кросс в это время стоял почти без движения, то из этой области консолидации он побежит быстрее чем та или иная пара по отдельности. Так было  3.10 когда и у фунта и у канадца были разнонаправленные движения, но потом когда канадец пошел закрывать гэп, он прошел чуть больше 100 пунктов, в то время как GBPUSD улетел на все 300.

И увидеть это можно только сравнивая графики по отдельности, как это можно увидеть на индикаторе(и можно ли вообще?) я не знаю.

 

 

Share this post


Link to post
Share on other sites
AntFX
7 минут назад, Mighty Mouse сказал:

Доллар тут при чем?

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

7 минут назад, Mighty Mouse сказал:

Индекс запаздывает и показывает прошлое, какой с этого толк? Пока идея его использования только одна - смотреть изменение производной как на обычном осцилляторе.

Любой индикатор показывает прошлое, потому что основан на изменении цены, которое по определению уже в прошлом. Складывается такое ощущение, будто Вы сами себя хотите убедить в том, что индикатор полностью бесполезен, ну так на здоровье, никто не заставляет Вас его скачивать и тратить свое время на анализ бесполезных вещей. Запускайте лучше свою машину времени и стройте индексы будущих котировок :)

Edited by AntFX

1

Share this post


Link to post
Share on other sites
Mighty Mouse
7 минут назад, AntFX сказал:

и может быть драйвером движения в паре, а может и не быть

 

Мне кажется что в этом обсуждении чего-то не хватает, нужен конкретный пример чтобы прояснить про что речь.

 

9 минут назад, AntFX сказал:

Складывается такое ощущение, будто Вы сами себя хотите убедить в том, что индикатор полностью бесполезен

 

Это у вас от избыточного общения с различными фанатами с единственно "правильной" идей застрявшей в голове :) 

Мне этого не нужно, я готов обсуждать любую тему, если она толковая.

 

13 минут назад, AntFX сказал:

Запускайте лучше свою машину времени и стройте индексы будущих котировок

 

Обычная трендовая линия это и есть машина времени если ч0 :)  Рабочая ли она или скорее отработает находящийся рядом с ней уровень, вот в чем заключается вопрос. 

Но это уже вопрос веры, основанной на опыте :)

 

uc2.PNG.b57035a2d03f2fa139561230ea9932c5.PNG

Share this post


Link to post
Share on other sites
AntFX
2 часа назад, Mighty Mouse сказал:

Но это уже вопрос веры, основанной на опыте :)

Ага, как по мне, так эта линия ничем по уровню прогностической ценности от той же МАшки не отличается, кроме того, что регулярно шпилит своих юзеров вероломными ложными пробоями, как её не нарисуй :)


1

Share this post


Link to post
Share on other sites
Ugar68

МА не меньше ложно пробивается чем трендовая линия. Всё это инструменты. Чем больше разных инструментов тем лучше. Есть выбор. Верить что инструмент может принести прибыль, не разумно. Но он может помогать зарабатывать.

Собственно калькулятор корреляции я и писал как инструмент. Он точно не зарабатывает, но надеюсь что кому то поможет заработать.


Пишу советники и индикаторы по вашим алгоритмам. Пишите в личку.
Чужие программы не переделываю.

Share this post


Link to post
Share on other sites
AntFX
3 часа назад, Mighty Mouse сказал:

Мне кажется что в этом обсуждении чего-то не хватает, нужен конкретный пример чтобы прояснить про что речь.

"В этом обсуждении" не хватает полугода пристального наблюдения за дивергенциями на индикаторе и скурпулезного последовательного бэктестинга, чтобы сказать, может это что-то дать или нет )

Edited by AntFX

1

Share this post


Link to post
Share on other sites
AntFX
13 минут назад, Ugar68 сказал:

МА не меньше ложно пробивается чем трендовая линия.

У МА вообще нет в общем смысле понятия ложного пробоя ) Потому что использовать МА можно 1000 разных способов, причем по смыслу они могут друг к другу не иметь никакого отношения - от каналов до осцилляторов, трендовых линий или просто фильтров типа "цена выше/ниже МА в момент открытия сделки или 100 баров назад". Зато когда люди рисуют трендовые линии, они как правило точно имеют в виду, что им открылась истина о том, откуда, куда и по какой траектории движется цена :) И на эту тему разные ушлые мистификаторы уже второй век тома безблагодатных "волновых теорий" расписывают.

Edited by AntFX

1

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×