アスク! - ページ 62 1...555657585960616263646566676869...182 新しいコメント ryanklefas 2007.06.09 08:58 #611 niva: 私は2次元の配列に格納された2次元のデータテーブルを持っています。そのデータテーブルから任意の列を選択してソートするような操作を行いたいのですが、可能でしょうか? ArraySort()関数は、命令の中で、その1次元で配列を並べ替えることができます。私はそれがどのように動作するのかわかりません。 MetaTraderのデータテーブルのソートについて何か提案はありますか? 私が聞いたことのある標準的な配列ソート 関数は、すべて1次元目しかソートしません。 自分で作らなければならないかもしれません。 もしまだ試していないのであれば、ウェブで高度なC++ソートアルゴリズムをチェックしてみてください。 FreedomFX 2007.06.12 08:03 #612 複数アカウントを使用した複数EA こんにちは。 私はメタトレーダー4(とFX取引)の初心者です。教えていただきたいのは、1つのメタトレーダー4プラットフォームで、同じ通貨ペアを 使い、同じ入金額の複数のデモ口座を使って複数のEAをテストすることは可能なのでしょうか? 例えば、私は5つの異なるEAを持っていて、1つのプラットフォームでGBPUSDのみを使用して、それぞれ1000ドルの独自のデモ口座に割り当て、一定期間にわたってそれらのパフォーマンスを比較できるようにしています。 これをStrategyBuilder - Metatrader - Demoで行おうとすると、ある口座のEAインストールが次の口座にログインしたときに繰り越されたり、繰り越し口座のEAを無効にして別のEAをインストールすると、最初の口座のEAが無効になってしまうことが分かりました。 同じ口座で異なる通貨ペアのEAを導入することは可能なのですが、これでは同じ通貨ペアに対して様々なEAのパフォーマンスを比較することができません。 バックテストは私の行動方針です。もしそうなら、どのように始めたらよいか、情報を提供してください。 よろしくお願いします。 フリーダムFX ryanklefas 2007.06.13 04:27 #613 フリーダムFXです。 あなたのアクティブなアカウントは、あなたのターミナルで実行されている任意のEAによって管理されているので、私はあなたが尋ねることを行うことができるとは思わない。 しかし、あなたのコンピュータにMT4の複数のコピーをインストールし、あなたのデモ口座の それぞれにそれらの1つを実行することができます。 proverbs 2007.06.13 20:07 #614 リャンクレファスです。 以下は、現在の値動き(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; } Ask! コーディングの方法は? Cute bug in Strategytester sbguy 2007.06.14 10:02 #615 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 です。 } } Ask! [アーカイブ!】どんなルーキーの質問でも、フォーラムを散らかさないように。プロフェッショナルの皆さん、通り過ぎないでください。あなたなしではどこにも行けない - 2. [Archive!] Any rookie question, sbguy 2007.06.14 15:44 #616 ご安心ください 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でいい結果が出たら載せますね。 Ask! Coding help コーディングのヘルプ ryanklefas 2007.06.14 17:09 #617 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です。 } proverbs 2007.06.14 17:46 #618 そう思っていましたので、確認していただきありがとうございます。ピボットを作成するロジックがよくわからないので、次はそちらに向かってみます。 お忙しい中、ありがとうございました。 DrPipper 2007.06.14 17:48 #619 エリオット波動インジケーター 私はewのオシレーターと別のものを見たが、彼らはトリックを行うことはありません。おそらく、それぞれのパターンを描画し、ラベルを付ける高調波パターン指標? ryanklefas 2007.06.14 22:47 #620 proverbs: そう思っていたので、確認していただきありがとうございます。ピボットを作成するロジックがよくわからないので、次はそこに向かってみます。 ありがとうございました。 ピボットを描画するインジケータは、以下のリンクにたくさんあるので、それを使えばいい。 あるいは、EAで自分でピボットを計算することもできますが、それは愚かなことだと思います。 http://www.forexmt4.com/ ピッパー博士 このような場合、「某国ではどうなんだろう? もしかしたら、上記のリンクもお役に立てるかも? 1...555657585960616263646566676869...182 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
私は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でいい結果が出たら載せますね。
リャンクルファス
以下は、現在の値動き(ビッド/アスク)に基づいて、保留中の注文を入力するコードです。
私の質問です。
私は、現在の価格ではなく、毎日のピボットから保留中の注文を入力するようにしたいのです。
または、私がこのコードに組み込むことができるいくつかのハイローピボットロジックがあり、ビッド/アスクの代わりにそれを参照として指摘することができますか?
ご助力ありがとうございます。
}
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のオシレーターと別のものを見たが、彼らはトリックを行うことはありません。おそらく、それぞれのパターンを描画し、ラベルを付ける高調波パターン指標?
そう思っていたので、確認していただきありがとうございます。ピボットを作成するロジックがよくわからないので、次はそこに向かってみます。 ありがとうございました。
ピボットを描画するインジケータは、以下のリンクにたくさんあるので、それを使えばいい。 あるいは、EAで自分でピボットを計算することもできますが、それは愚かなことだと思います。![](https://c.mql5.com/forextsd/smiles/regular_smile.png)
http://www.forexmt4.com/
このような場合、「某国ではどうなんだろう?
もしかしたら、上記のリンクもお役に立てるかも?