自動売買選手権2007:エキスパートにありがちなミス - ページ 5

 
komposter:
カダック
しかし、主催者はそのようなEAを競技に参加させることができるでしょうか。 このデザインを使って、5分間の多通貨の「リソースの使い過ぎ」テストは問題なくEAを通過させることができます。
このデザインは、Expert Advisorのプログラミングの良い基調になっています。
主催者が有能なEAライターを失格にしたという話は聞いたことがない ;)

私もそう思っていません。ORGANIZERSからの返信を希望します。
 
Kadak:

私もそう思っています。ORGANISERSからのお返事をお待ちしています。
コンペティションで走れば、そのすべてがわかる。リソースをあまり消費しないのであれば、(残りのルールが 守られていれば)問題ありません。
 
Renat:
Martes:

主催者の皆様へ

マルチカレンシーエキスパートアドバイザーの正確な定義を教えていただいてもよろしいでしょうか? マルチカレンシーエキスパート」という言葉でホームページを検索しました。 その結果、ドキュメントには何も見つからず、その他のページ(主にチャンピオンシップフォーラムのもの)にも定義は記載されておりませんでした。多通貨の専門家とは何か、おおよそ想像はつくが、正確な定義も必要だ。

マルチカレンシーエキスパートアドバイザーは、彼が取り付けられているシンボルを含まない、他の金融商品の取引ポジションを開く人です。どのExpert Advisorも他のシンボルのチャートやパラメータを参照して情報を得ることができますが、このため、マルチカレンシーとはみなされていないのです。

つまり、多通貨でないExpert Advisorは、異なる時間軸の異なる通貨ペアの情報を取り込んで、現在のチャートの通貨ペアの注文を判断することができるのでしょうか?

その場合、以下のコードを使用して、単一通貨ペアモードでマルチカレンシーエキスパートアドバイザーをテストすることはできますか?テスト中に他の通貨ペアの情報を取得することは可能ですか?

==========================================================================


if ((mono==1)&&(f==0) ) ////=== mono - ある通貨ペアの注文開始の印、f - 現在のチャートの通貨ペアの印。
{
ticket=OrderSend(Symbol(), OP_BUY, LotsOptimized, Ask, 5,Bid-StopLoss*Point, Ask+TakeProfit*Point, Commenta,f,0, Green)のようになります。
if(チケット>0)
{
if(OrderSelect(ticket, SELECT_BY_TICKET, MODE_TRADES)){}
else Print("Error openingBUY order: ", GetLastError());
}

}
さもなくば
{
double bid =MarketInfo(Symbol_array[f], MODE_BID);
double ask =MarketInfo(Symbol_array[f], MODE_ASK);
double point =MarketInfo(Symbol_array[f], MODE_POINT);
ticket=OrderSend(Symbol_array[f], OP_BUY, LotsOptimized, ask, 5,bid-StopLoss*point, ask+TakeProfit*point,Commenta,f,0, Green).を実行します。
if(チケット>0)
{
if(OrderSelect(ticket, SELECT_BY_TICKET, MODE_TRADES)){}
else Print("Error opening BUY order : ", GetLastError());
}


}

======================================================================================

 
error 4108 when closing order no... "を解消する方法を教えてください。Expert Advisorが正常に動作しているため、どの程度致命的なのでしょうか。
 
Tihon_RUS:
error 4108 when closing order no... "を解消する方法を教えてください。また、Expert Advisorが正常に動作しているため、どの程度重要なのでしょうか。
正しいチケットを指定しないと閉じられません。コードがないと何も言えません。
 
while (OrdersTotal()>0)
{
if (!OrderSelect(0, SELECT_BY_POS)) break;
if (OrderType()>OP_SELL)
{
if (!OrderDelete(OrderTicket()))
{
Print("Error ", GetLastError()," whendeleting the pending order",
OrderTicket());
break;
}.
}
{
double price;
if (OrderType()==OP_SELL)
price = MarketInfo(OrderSymbol(), MODE_ASK);
else
price = MarketInfo(OrderSymbol(), MODE_BID);

if (!OrderClose(OrderTicket(), OrderLots(), price, 3))
{
Print("Error ", GetLastError()," when closing position ", OrderTicket());
break;
}.
}
}
Sleep(10000)。
 
...
if ((OrderType()>OP_SELL) && (OrderCloseTime() == 0))
...

クローズタイムチェックを追加する。すでに削除されている注文を削除する必要はありません。

 

何が問題なのか、教えていただけませんか?

何が悪いのかわからない!?

50pipsでTrawlが動作開始

この場合、最初は35ポイント達成で注文を開始し、ロスカット+5ポイントになる。

そして、50pipsになったらトロールが動き出す。

私のマシンでこの時間帯と他の時間帯にテストしたところ、エラー130は 発生しませんでした。

---

これは、アドバイザーをテストしているマシンが出力するものです - 私はテスト時にエラーが発生しません :-)

ブレイクイーブン35p、ネクストトラル50pに振り込むとエラーになるのかなぁ?

一方、強い動きで強いリクオートをする場合、どのように問題を回避すればいいのでしょうか?

2007.09.06 19:30 loading
yz_t4 on EURUSD:240
19:30:18 2007.01.03 16:06  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:06  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:06  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:06  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:08  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:08  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:08  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:09  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:10  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:10  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:10  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 16:24  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 16:25  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 16:25  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 16:30  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 16:30  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 16:30  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 17:12  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 17:12  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 17:13  yz_t4 EURUSD,H4: OrderModify error 1
1 min 34 seconds
Errors: 20
  
Код тралла достаточно сложный и все же я приведу его! 
ファイル:
yz_trall.mq4  10 kb
 

レナートと ロッシュへ!

1.Expert Advisor を送信する際、Expert Advisor のテスト条件(通貨ペア、TF)を作者が指定する必要がありますか?これはもちろん愚問なのですが、自分で条件を選んでしまうと、なかなか収拾がつかなくなるかもしれません :)

2.多通貨EAの条件が、あるTFを持つ海外ペアのオープンチャートが 複数ある場合、チャンピオンシップでEAを起動する際に観察されるのか、どこで策定するのか。

 
goldtrader:

レナートと ロッシュへ!

1.Expert Advisorを送信する際、Expert Advisorのテスト条件(通貨ペア、TF)を作者が指定する必要がありますか?これはもちろん愚問なのですが、自分で条件を選んでしまうと、なかなか収拾がつかなくなるかもしれません :)

2.多通貨EAの条件が、あるTFを持つ外国ペアのチャートを複数開いている場合、チャンピオンシップでEAを起動する際、その条件は守られるのでしょうか、またどこに記載されるのでしょうか。


1.参加者のプロフィールの「ファイル」タブで指定されたシンボル/期間でEAをテストします。しかし、我々はエラーを検出するために、任意のデータで Expert Advisorをテストすることができます。エキスパートアドバイザーが正しく記述され、エラー処理が提供されていれば、どのようなデータに対しても適切に動作し、誤ったリクエストで取引サーバーに負荷をかけることはなく、巨大なログを生成することもありません。

2.Expert Advisorの説明で、どのチャートを開くかを指定する必要があります。期間を 指定しない場合、メインシンボルに指定された期間でチャートが 開かれます。