[警告は閉鎖されました!】フォーラムを乱雑にしないために、どんな初心者の質問でも。プロフェッショナルは、通り過ぎないでください。あなたなしでは、どこにも行けない。 - ページ 48

 
orlovkem >> :

コメントが間違っているかもしれませんが、本質はその通りで、価格水準がインジケータ値より高ければ買うべきですが、それは一度だけで、預金にお金がある限りEAが買ってくれるはずです。案件を限定すればいいんです。一度にたくさん作ろうとすると、うまくいきません。

現在のバーと前のバーのチェックを行い、シグナルは1つになります。

交差点のみ

例えば、現在のバーでインジケータが高く、前のバーで低くなっていた場合。

は買いを意味し、そのシグナルに対して一度だけ買うことになる。

 
orlovkem >> :

書き方が悪かったかもしれませんが、本質は、価格水準がインジケータ値より高くなったので、買う必要があり、買ってくれるのですが、一回だけで、入金にお金がある限りEAが買ってくれるのです。案件を限定すればいいんです。一度にたくさん作ろうとすると、うまくいきません。

本当に買っている(売っている)のか?試してみましたか?コードから判断すると、「預けたお金がある限り買う」のではなく、「一度も取引しない」ということはないはずです。それとも、あなたがコードを書いていないのですか?

 
xeon >> :

同時に開く注文の数をコントロールする最も簡単な方法

注文が並行して開かれることはありません。ある注文を閉じた直後に、同じ方向で別の注文が開かれます(この時点で、取引はすでに力を使い果たしており、私は損をしています)。

((

 
VladislavVG >> :

本当に買っている(売っている)のか?試してみましたか?コードから判断すると、「預けたお金がある限り買う」のではなく、「一度も取引しない」ということはないはずです。それとも、あなたがコードを書いていないのですか?


私がコードを書いたら、それが売買される。ストラテジーテスターで試した。

 
satop >> :

現在のバーと前のバーのチェックを行い、シグナルは1つになります。

が交差するときだけです。

つまり、現在のバーでインジケーターが高く、前のバーで低くなった場合

は買いを意味し、そのシグナルに対して一度だけ買うことになる。

ありがとうございました!求められているものが理解できた気がします。試してみます。いつもありがとうございます。

 
xruss >> :

注文は並行して出ません。ある注文を決済した直後に、同じ方向で別の注文が出ます(その時点で、その取引はすでに力を使い果たしており、私は損をしています)。

((

そして、最後の注文の選択とそのチェックの条件に責任を持つ、全体の断片をお送りいただければ、私たちはそれを理解することができます。このように、何かを提案するのは難しいものです。また、シグナル発生後、ポジションを開くと同時に、この種の取引を禁止するフラグを設定し、ポジションを開くブロックの中で、その存在を確認することも可能です。フラグが立っている場合 - その取引はスキップされます。反対方向のシグナルを受信すると、フラグは取り除かれますが、ポジションの最初のオープンに成功すると、新しいフラグが設定され、新しいシグナルを受信したそのタイプのディールを開くことが禁止されます。といった具合に。

 
orlovkem >> :

コードを書いたら、買いも売りも出てきました。Strategy Testerで試してみました。

前のページに掲載したコードではないんですね。そのコードは何も買わず、何も売らない。信じられなければコピーしてテスターで動かしてみてください。

例えば、a>=bとa<bの条件を同時に満たす数字の組は存在しないことは、私にとっては明らかです。専門家から判断すると、あなたにとっては当たり前でないばかりか、あなたにとってはそんな数字が存在することが当たり前なのです。もちろん、私が間違っている可能性もある。それなら、難しくなければ、そのような数字の組の例を教えてほしい。この場合のみ、あなたのアルゴリズムで買い注文が出されます。セルも同様です。

>> 頑張ってください。

 
Everlost писал(а)>>

そして、最後の注文の選択とそれをチェックする条件を担っているフラグメント全体を掲載していただければ、解決できると思います。このように、何かを提案するのは難しいものです。また、シグナル発生後、ポジションを開くと同時に、この種の取引を禁止するフラグを設定し、ポジションを開くブロックの中で、その存在を確認することができます。フラグが立っている場合 - その取引はスキップされます。反対方向のシグナルを受信すると、フラグは取り除かれますが、ポジションの最初のオープンに成功すると、新しいフラグが設定され、新しいシグナルを受信したそのタイプのディールを開くことが禁止されます。といった具合に。

後で少し紹介しますが、フラグがあった方がかっこいいような気がします。 mql4から設定するにはどうしたらいいのでしょうか?

以下は私のコードです。

//Учет ордеров истории
int ORDtype=-1;
double ORDprofit=0.001;
for( i=OrdersHistoryTotal(); i>=0; i--)
{
if(OrderSelect( i, SELECT_BY_POS, MODE_HISTORY))
 {
  if(OrderSymbol()==Symbol())
  {
   if(OrderCloseTime()!=0)
   {
     ORDtype=OrderType();
     ORDprofit=OrderProfit();
   }
  }
 }
}    

....

if (( ORDtype==OP_SELL)||( ORDtype==-1)&&(( ORDprofit<=0)||( ORDprofit==0.001))...
{
...
}
if (( ORDtype==OP_BUY)||( ORDtype==-1)&&(( ORDprofit<=0)||( ORDprofit==0.001))...
{
...
}
 

ブローカーで6時から20時までエキスパートが動作しないようにして、スイッチが切れる前にチェックし、終了するまで待つようにしたかった。 すべて動作しているが、エキスパートが取引を停止したときに取引が終了したようなアラートを追加できればいいと思う。

if(TimeHour(TimeCurrent()) > 6 && TimeHour(TimeCurrent()) < 20 && Worktime == true)
{
if (OrdersTotal() == 0)
Alert("Торговля закончена");
return(0);
}

という音が鳴り始める。この場合、アラートが1回鳴るだけでなく、サイクルが切断されます。どっちにしたらいいのか、アドバイスしてください、解りません・・・。

 
Dimoncheg >> :

ブローカーで6時から20時までエキスパートが動作しないようにして、スイッチが切れる前にチェックし、終了するまで待つようにしたかった。 すべて動作しているが、エキスパートが取引を停止したときに取引が終了したようなアラートを追加できればいいと思う。

if(TimeHour(TimeCurrent()) > 6 && TimeHour(TimeCurrent()) < 20 && Worktime == true)
{
if (OrdersTotal() == 0)
Alert("Торговля закончена");
return(0);
}

という音が鳴り始める。この場合、アラートが1回鳴るだけでなく、サイクルが切断されます。どっちにしたらいいかアドバイスしてください!どうしてもわからないんです...。

選択肢の一つです。

if(TimeHour(TimeCurrent()) > 6 && TimeHour(TimeCurrent()) < 20 && Worktime == true)
   {
   if (OrdersTotal() == 0)
   if( NeedAlert){ Alert("Торговля закончена"); NeedAlert=false;}
   return(0);
   }
取引開始時にbool変数NeedAlertをtrueに設定する。