アスク! - ページ 62

 
niva:
私は2次元の配列に格納された2次元のデータテーブルを持っています。そのデータテーブルから任意の列を選択してソートするような操作を行いたいのですが、可能でしょうか?

ArraySort()関数は、命令の中で、その1次元で配列を並べ替えることができます。私はそれがどのように動作するのかわかりません。

MetaTraderのデータテーブルのソートについて何か提案はありますか?

私が聞いたことのある標準的な配列ソート 関数は、すべて1次元目しかソートしません。 自分で作らなければならないかもしれません。 もしまだ試していないのであれば、ウェブで高度なC++ソートアルゴリズムをチェックしてみてください。

 

複数アカウントを使用した複数EA

こんにちは。

私はメタトレーダー4(とFX取引)の初心者です。教えていただきたいのは、1つのメタトレーダー4プラットフォームで、同じ通貨ペアを 使い、同じ入金額の複数のデモ口座を使って複数のEAをテストすることは可能なのでしょうか?

例えば、私は5つの異なるEAを持っていて、1つのプラットフォームでGBPUSDのみを使用して、それぞれ1000ドルの独自のデモ口座に割り当て、一定期間にわたってそれらのパフォーマンスを比較できるようにしています。

これをStrategyBuilder - Metatrader - Demoで行おうとすると、ある口座のEAインストールが次の口座にログインしたときに繰り越されたり、繰り越し口座のEAを無効にして別のEAをインストールすると、最初の口座のEAが無効になってしまうことが分かりました。

同じ口座で異なる通貨ペアのEAを導入することは可能なのですが、これでは同じ通貨ペアに対して様々なEAのパフォーマンスを比較することができません。

バックテストは私の行動方針です。もしそうなら、どのように始めたらよいか、情報を提供してください。

よろしくお願いします。

フリーダムFX

 

フリーダムFXです。

あなたのアクティブなアカウントは、あなたのターミナルで実行されている任意のEAによって管理されているので、私はあなたが尋ねることを行うことができるとは思わない。 しかし、あなたのコンピュータにMT4の複数のコピーをインストールし、あなたのデモ口座の それぞれにそれらの1つを実行することができます。

 

リャンクレファスです。

以下は、現在の値動き(bid/ask)に基づいて、保留中の注文を 入力するコードです。

私の質問です。

私はこれが現在の価格ではなく、毎日のピボットから保留中の注文を入力したいのです。

または、私がこのコードに組み込むことができるいくつかのハイローピボットロジックがあり、その後、入札/アスクの代わりに参照としてそれを指摘することができますか?

ご助力ありがとうございます。

}

OrderSend(Symbol(),

OP_BUYSTOP,

lots,

Ask+open_long*Point, // Spread included

slippage,

Bid+(open_long-stop_long)*Point,

Bid+(open_long+take_profit)*Point,

NULL,

magic,

0,

FireBrick);

OrderSend(Symbol(),

OP_SELLSTOP,

lots,

Bid-open_short*Point,

slippage,

Ask-(open_short-stop_short)*Point,

Ask-(open_short+take_profit)*Point,

NULL,

magic,

0,

FireBrick);

clear_to_send = false;

}

 

noLagMACD

どなたか、このコードの一部が間違っていることを教えていただけませんか。私はnoLagMACDをMakegrid193に組み込もうとしています。コンパイルして実行しますが、myWantLongs と myWantShorts の設定を全く変更しないので、注文が生成されません。

if(UseMACDNoLag)

{

int limit=Bars;

myWantLongs = false;

myWantShorts = falseです。

for(i=0; i<limit; i++)

{

FastEMABuffer=iMA(NULL,PERIOD_M5,emaFast,0,MODE_EMA,PRICE_CLOSE,i).となります。

SlowEMABuffer=iMA(NULL,PERIOD_M5,emaSlow,0,MODE_EMA,PRICE_CLOSE,i);

}

for(i=0; i<limit; i++)

{

EMA=iMAOnArray(FastEMABuffer,0,emaFast,0,MODE_EMA,i);

ZeroLagEMAp=FastEMABuffer+FastEMABuffer-EMA;

EMA=iMAOnArray(SlowEMABuffer,0,emaSlow,0,MODE_EMA,i);

ZeroLagEMAq=SlowEMABuffer+SlowEMABuffer-EMA.MACDBuffer=ZeroLagEMAq(SlowEMABuffer)とする。

MACDBuffer=ZeroLagEMAp - ZeroLagEMAq。

}

double tester1, tester2, tester3;

tester1 = MACDBuffer[0];

tester2 = MACDBuffer[1];

tester3 = MACDBuffer[2];

if( (テスター1 > 0.0) && (テスター2 <= 0.0) )// クロスアップ

{

CloseAllPendingOrders()を実行します。

if(CloseOpenPositions == true)

{

ClosePendingOrdersAndPositions();

}

if(wantLongs==true)

{

myWantLongs = true;

}

myWantShorts = false;

}

if( (tester1 = 0.0) )// クロスダウン

{

CloseAllPendingOrders()を実行します。

if(CloseOpenPositions == true)

{

ClosePendingOrdersAndPositions();

}

if(wantShorts==true)

{

myWantShorts = true;

}

myWantLongs = falseです。

}

if( (テスター1 > 0.0) && (テスター2 > 0.0) && (テスター3 > 0.0) && (wantLongs==true) ) // が0を大きく超えている場合

{

myWantLongs = trueです。

}

if( (テスター1 < 0.0) && (テスター2 < 0.0) && (テスター3 < 0.0) && (wantShorts==true)の場合 ) // が0を大きく下回っている

{

myWantShorts = true です。

}

}

 

ご安心ください

Time[]とiComplexを発見して、以前投稿したあのゴタゴタがこんな感じになりました。

if(UseMACDNoLag)

{

if(newbar != Time[0])

{

newbar=Time[0];

myWantLongs = false;

myWantShorts = falseです。

MACD_Main = iCustom(NULL, 0, "ZeroLagMACD", FastEMA, SlowEMA, SignalEMA, 0, 1);

if(MACD_Main > 0)

{

if(!MACDup)

{

if(CloseOpenPositions == true)

{

ClosePendingOrdersAndPositions();

さもなくば

{

CloseAllPendingOrders() を実行します。

}

}

MACDup = true;

myWantShorts = false;

if(wantLongs==true)

{

myWantLongs = true;

}

if(MACD_Main < 0)

{

if(MACDup)

{

if(CloseOpenPositions == true)

{

ClosePendingOrdersAndPositions();

さもなくば

{

CloseAllPendingOrders() を実行します。

}

}

MACDup = false;

myWantLongs = false;

if(wantShorts==true)

{

myWantShorts = true;

}

}

}

}

これ、めちゃめちゃ楽しいです!!!このEAでいい結果が出たら載せますね。

 
proverbs:
リャンクルファス

以下は、現在の値動き(ビッド/アスク)に基づいて、保留中の注文を入力するコードです。

私の質問です。

私は、現在の価格ではなく、毎日のピボットから保留中の注文を入力するようにしたいのです。

または、私がこのコードに組み込むことができるいくつかのハイローピボットロジックがあり、ビッド/アスクの代わりにそれを参照として指摘することができますか?

ご助力ありがとうございます。

}

OrderSend(Symbol(),

OP_BUYSTOP,

lots,

Ask+open_long*Point, // Spread included

slippage,

Bid+(open_long-stop_long)*Point,

Bid+(open_long+take_profit)*Point,

NULL,

magic,

0,

FireBrick);

OrderSend(Symbol(),

OP_SELLSTOP,

lots,

Bid-open_short*Point,

slippage,

Ask-(open_short-stop_short)*Point,

Ask-(open_short+take_profit)*Point,

NULL,

magic,

0,

FireBrick);

clear_to_send = false;

}

[/code]

各ピボットポイントは価格値です。 そして、保留中の注文は、ある価格で発注されなければならず、その時点で有効になります。 したがって、保留中の注文を出すときは、その入力価格を選択したピボット・レベルに設定します。 次に、注文のエントリー価格に関連して、ストップロスとテイクプロフィットを設定します。

[コード]

}

OrderSend(Symbol(),

OP_BUYSTOP,

lots,

pivotLevelGoesHere,

スリッページ

pivotLevelGoesHere-(stop_long*Point),

pivotLevelGoesHere+(take_profit*Point),

NULL

マジック

0,

ファイヤーブリック)。

OrderSend(Symbol(),

OP_SELLSTOP,

たくさん

anotherPivotLevelGoesHere,

スリッページ

anotherPivotLevelGoesHere+(stop_short*Point)。

anotherPivotLevelGoesHere-(take_profit*Point),

NULL

マジック

0,

ファイヤーブリック)。

clear_to_send = falseです。

}

 

そう思っていましたので、確認していただきありがとうございます。ピボットを作成するロジックがよくわからないので、次はそちらに向かってみます。

お忙しい中、ありがとうございました。

 

エリオット波動インジケーター

私はewのオシレーターと別のものを見たが、彼らはトリックを行うことはありません。おそらく、それぞれのパターンを描画し、ラベルを付ける高調波パターン指標?

 
proverbs:
そう思っていたので、確認していただきありがとうございます。ピボットを作成するロジックがよくわからないので、次はそこに向かってみます。 ありがとうございました。

ピボットを描画するインジケータは、以下のリンクにたくさんあるので、それを使えばいい。 あるいは、EAで自分でピボットを計算することもできますが、それは愚かなことだと思います。

http://www.forexmt4.com/

ピッパー博士
このような場合、「某国ではどうなんだろう?

もしかしたら、上記のリンクもお役に立てるかも?