Meta Traderでのスプレッド取引 - ページ 163

 

ロット比率を計算するとき、私は次のようにしています。

1. まず、2つの外部変数(2つのFIの「揮発性係数」と呼ぶことにする)に1の値を割り当てる。

2.所望の時点から(外部変数に設定) - 同時に私は "左 "スパイクを検出するために両方のチャートに目を通します:原則として、M5、M15に先月は多かれ少なかれ正常である - 我々は、別のウィンドウでティックでペアの動きをプロットします。

extern datetime start = D'2011.01.19 03:00'; //время начала отрисовки тиковых графиков
extern double K1=1.0; //коэффициенты пропорциональности (для волатильности) устанавливаем визуально
extern double K2=1.0;
extern double Y_shift=0; //смещение по вертикали тикового графика второго инструмента

TickSize_1=MarketInfo(Symbol(),MODE_TICKSIZE); 
TickSize_2=MarketInfo(Symbol_2,MODE_TICKSIZE);

int bar2_1=iBarShift(Symbol_2,0,Time[i],false); //для синхронизации
int bar2_2=iBarShift(Symbol_2,0,Time[i+1],false);
double Close2_1=iClose(Symbol_2,0,bar2_1);
double Close2_2=iClose(Symbol_2,0,bar2_2);

StartBar=iBarShift(NULL,0,start,false);


    if(i==StartBar)
      {
      TM_1[i]=K1*(Close[i]-Close[i+1])/TickSize_1;
      TM_2[i]=(K2*(Close2_1-Close2_2)/TickSize_2)+Y_shift;
      }
    else
      {
      if(i<StartBar)
        {
        TM_1[i]=K1*((Close[i]-Close[i+1])/TickSize_1)+TM_1[i+1];
        TM_2[i]=K2*((Close2_1-Close2_2)/TickSize_2)+TM_2[i+1];
        }
      }


がスタートです。

ロットの予備値は、(これはチェックする必要がありますが - 例えば、デポ通貨ドルとFDAXの ティック= 12.5ユーロ)から定義されています。

TV_Sym1=MarketInfo(Symbol(),MODE_TICKVALUE);
TV_Sym2=MarketInfo(Symbol_2,MODE_TICKVALUE);

で、似たような図形を2つ選んで、それぞれの高さを刻みで測ります。

for oil QM for oil BRN

見ての通り、BRNは88ティック、QMは56,5(10個で十分なので、似たような数字をたくさん見つけて、ある商品の移動の合計と他の商品の移動の合計の比率を得ることが可能です。

このジェスチャーの結果(並行して、この場所のグラフの差を高さで測定します - 43,8目盛り)。

ここで、外部変数Y_shift=43,8を設定し、確認します。

この場合、ロットの計算はこのコードによって自動的に行われます。

//---- расчет соотношений объемов по паре (TICK_VALUE предварительно проверять!)
  double L1=1,L2=1; //предварительно для обоих инструментов установим объемы по 1 лоту
  
  if(K1>K2) L1=NormalizeDouble(K1/K2,2);
  else if(K1<K2) L2=NormalizeDouble(K2/K1,2);
  
  if(TV_Sym1>TV_Sym2) L2*=NormalizeDouble(TV_Sym1/TV_Sym2,2);
  else if(TV_Sym1<TV_Sym2) L1*=NormalizeDouble(TV_Sym2/TV_Sym1,2);
  
  if(L1>L2) {L1/=L2; L2=1;}
  else if(L1<L2) {L2/=L1; L1=1;}

すなわち、1.25 / 1 (もう一度言いますが、1桁では十分ではありません!)

レオニードで不一致がなかったことを記しておきます(この方法で何組かチェックしました)。

Z.I.は道具の1つが接着剤であることを気にしない - 例のためにそれは重要ではない

 
PPC:

ロットの予備値は、(これは確認する必要がありますが - 例えば、デポ通貨は$とFDAX ティック= 12.5ユーロ)より定義されています。

同様の問題は、次のように解決されています。

double TrueTickValue( string Symb )
{
  double TickValue = MarketInfo(Symb, MODE_TICKVALUE);
  double Tmp = MarketInfo(Symb, MODE_MARGININIT);
 
  if ((MarketInfo(Symb, MODE_MARGINCALCMODE) > 0) && (Tmp > 0))
    TickValue *=  MarketInfo(Symb, MODE_MARGINREQUIRED) / Tmp;
 
  return(TickValue);
}
私のスプレッドの求め方は、最適化問題を解くことに基づいており、任意の数のFIに対して完全に自動化されています。
 
hrenfx:

似たような問題は、このように解決しました。

全く同感です。100%動作します。非常にシンプルで論理的な構造です。(ご本人の許可を得て、貯金箱の中に入れておきます)

 
hrenfx:
私のスプレッドの求め方は、最適化問題を解くことに基づいており、任意の数のFIに対して完全に自動化されています。
まあ、あなたのアイデアを知ることは光栄ではないので、ここではノーコメント です :)
 
PPC:
まあ、あなたのアイデアを知ることは光栄ではないので、ここではノーコメントです :)

これが 問題提起で、これが 解決策です。
 
hrenfx:

これが 問題提起で、これが 解決策です。
情報ありがとうございます。
 

ちなみに、原油の場合は、CL (またはWTI)-BRNの スプレッドを裁定する方が合理的です

寸法は同じです。そして、アナリストのコメントは、すべてBRN - CLの スプレッドの次元で行われます。

ところで、今朝は面白いコメントがありました。http://top.rbc.ru/finances/07/02/2011/539457.shtml。

一般に、多くの「コモディティ」アナリストは、このスプレッド(BRN-CL)が11桁に達した今、これ以上伸びない、長期収縮に入る理由がある、と想定しています。

 

現在の状況BRNH1-CLH1=1^1, H1

 
leonid553:

ちなみに、原油の場合は、CL (またはWTI)-BRNの スプレッドを裁定する方が合理的です。

計算手法そのものの例を挙げただけなのですが...。
 

さて、ここで出席者の皆さんにちょっとしたご褒美をあげましょう。

HEJ1-HEK1 カレンダー豚肉スプレッド(4月~5月)。

季節のトレンドを永続的に .ノーコメント!

ただし、コメントはあります。このスプレッドでオープンするポジション - 18:30モスクワ時間帯以降のアメリカセッションの取引中が良い。この時、これらの豚肉商品のAsk Bidは 、数十倍と大幅に小さくなっています。