どんな新人の質問でも、フォーラムを乱雑にしないように。プロフェッショナルは、通り過ぎないでください。Nowhere without you - 6. - ページ 976

 
AlexeyVik:
そして、あなたのお母さんは、ドキュメントを読むことを許さないのですか?例)SendMail

はいこの関数はもちろん、私が知っている、つまり - ターミナルのウィンドウでタブ、(貿易、資産、アカウントの履歴、ニュース、アラート、メールなど)メールが到着したときにそこに(内部のメール端末で)SMSや電子メールを送った(例えば、サーバーなどを再起動についてのメッセージを受信する)?

 
optionany:

はいこの関数はもちろん、私は知っている、つまり - ターミナルのウィンドウでタブ、(貿易、資産、アカウントの履歴、ニュース、アラート、メールなど)メールがそこに来るとき(内部のメール端末で)SMSや電子メールを送った(例えば、サーバーなどを再起動に関するメッセージを受信する)?

だから、考えながらフレーズにしてください。

もし、あなたが明確に考えているならば、あなたは明確に考えている...。

 

こんにちは。私の間違いというか、私のプログラムのこのブロックのどこが欠陥なのかが理解できないのです。

//--未決済注文の別会計化

for(int i=OrdersTotal()-1;i>=0;i--)//OrdersTotal()-1;i>=0;i-- //注文のループ
{
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);// オーダーが見つかった場合
{
if(OrderSymbol()!=Symbol()||OrderMagicNumber()!=Magic) continue;
}.

{
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==Magic))
。if(OrderType()==OP_BUY)
Total++;
}
return;
}
//--。

for(int i=OrdersTotal()-1;i>=0;i--)
{
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
{
if(OrderSymbol()!=Symbol()||OrderMagicNumber()!=Magic) continue;
}.

{
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==Magic))
。if(OrderType()==OP_SELL)
Total++;
}
return;
}
//---。

EAはStrategy Testerとデモ口座で安定して動作しますが、コンパイル時に2つの警告が発生します: 'OrderSelect' の戻り値を確認する必要があります。もし可能であれば、私の書いたものが間違っていたり、不完全だったりするところを教えてください。

 
YuryVL:

こんにちは。私の間違いというか、私のプログラムのこのブロックのどこが欠陥なのかが理解できないのです。

//--未決済注文の別会計化

for(int i=OrdersTotal()-1;i>=0;i--)//OrdersTotal()-1;i>=0;i-- //注文のループ
{
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);// オーダーが見つかった場合
{
if(OrderSymbol()!=Symbol()||OrderMagicNumber()!=Magic) continue;
}.

{
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==Magic))
。if(OrderType()==OP_BUY)
Total++;
}
return;
}
//--。

for(int i=OrdersTotal()-1;i>=0;i--)
{
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
{
if(OrderSymbol()!=Symbol()||OrderMagicNumber()!=Magic) continue;
}.

{
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==Magic))
。if(OrderType()==OP_SELL)
Total++;
}
return;
}
//---。

EAはStrategy Testerとデモ口座で安定して動作しますが、コンパイル時に警告が表示されます: 'OrderSelect' の戻り値を確認する必要があります。もし可能であれば、私の書いたものが間違っていたり、不完全だったりするところを教えてください。


SRSでコード挿入!そして、なぜ2つのループは、ノーチェックの後にイエスと合計が両方のタイプを読み、別々にメモリに保持する必要がありますか?そんなの誰にもわからないよ!自分が何をしたいのか、誰が見てもわかるようにロジックを組み立てる必要があり、そうすればコンパイラもわかってくれるはずです
 
YuryVL:

こんにちは。私のプログラムでは、このブロックの何が間違いなのか、むしろ欠陥なのかが理解できないのです。

...

1)コードを ここに正しく貼り付けるには、SRCをクリックしてから、ボックス内にコードをコピーしてください(下図)。


2)このコードを試してみてください。

int Total_BUY=0, Total_SELL=0; // новые переменные как счетчики ордеров

//---Раздельный учёт открытых ордеров
for(int i=OrdersTotal()-1; i>=0; i--) // Цикл перебора ордеров
  {
   // OrderSelect() надо выбирать с помощью if
   if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)); // Если найден ордер, то:
     {
      if(OrderSymbol()!=Symbol() || OrderMagicNumber()!=Magic) continue;
      else
        {
         if(OrderType()==OP_BUY)  Total_BUY++;  // считает открытые позиции на покупку
         if(OrderType()==OP_SELL) Total_SELL++; // считает открытые позиции на продажу
        }
     }
  }
 

アラートを取得するには

Alert(OrderOpenPrice());

注文の開始 価格を小数点以下5桁で表示しますか?NormalizeDouble(OrderOpenPrice(),Digits) は役に立ちません。(注文は事前に選択されています).

 
JoinDoe:

アラートを取得するには

注文の開始価格を小数点以下5桁で表示しますか?NormalizeDouble(OrderOpenPrice(),Digits) は役に立ちません。(注文は事前に選択されています).

Alert(DoubleToString(OrderOpenPrice(),Digits));
 
Leo59:
こんにちは。

2つのセグメントの交点の座標を求めるアルゴリズムの翻訳を手伝ってください。

記事より

とてもシンプルですね。
x1,y1 と x2,y2 は、最初のセグメントの頂点の座標である。
x3,y3 と x4,y4 は2番目のセグメントの頂点の座標である。

というように、交点を求めるには、直線の方程式を作る必要があります。
を1次式で表す。
(x-x1)/(x2-x1)=(y-y1)/(y2-y1);
にじほうていしき
(x-x3)/(x4-x3)=(y-y3)/(y4-y3);
これらの方程式は、2点を通る直線を定義するもので、私たちが必要としているものです。
これらの式から、以下の式でxとyを求める。
x:=((x1*y2-x2*y1)*(x4-x3)-(x3*y4-x4*y3)*(x2-x1))/((y1-y2)*(x4-x3)-(y3-y4)*(x2-x1));
y:=((y3-y4)*x-(x3*y4-x4*y3))/(x4-x3);
線が交差しているので、座標(x,y)を持つ共通の交点があり、それを求める必要があります。
交点が線分に属するためには、交点を拘束する、つまり条件をチェックする必要があります。
もし
(((x1<=x)and(x2>=x)and(x3<=x)and(x4 >=x))or((y1<=y)and(y2>=y)and(y3<=y) and(y4>=y)))。
であれば、これらのセグメントの交点が存在し、そうでなければ交点が存在しない。
また、これらのセグメントの平行度を角度係数を用いて確認する必要があります。
k1:=(x2-x1)/(y2-y1) です。
k2:=(x4-x3)/(y4-y3)。
ここで、k1、k2は軸ОХの正方向に対するセグメントの傾斜角の接線であり、k1=k2ならば、セグメントは平行なので、交点はないことになる。

そして、もしかしたら、誰かがアーカイブでレディなものを持っているかもしれない?


もしかしたら
 

MT4で、内部端末メールへのメッセージ(レバレッジ変更、サーバー再起動など)をSMSやメールでリダイレクトするような機能はありますか?

P.s ターミナルウィンドウのタブ、(取引、資産、口座履歴、ニュース、アラート、MESSAGE、など)?

 
フォーラムユーザーの皆様、こんにちは。

MQL4の勉強を始めたのですが、簡単なインジケータを書くときに解決できない問題に直面しました。問題の本質

1_How to find High[i - end of day], I have a simple loop Close[i]-Open[i+1], I need to find High[i - end of day].例えば、from[i],[1],[2] and to the end of day (PERIOD_H1) .どうすればいいのかわからない。iHigh」機能もありますが、ちょっと違いますね。

2_ それだけではありません。生意気なことを言って申し訳ありませんが、「iBars」関数があります(対応するシンボルと期間について、履歴の中のバーの数を 返します)。history(PERIOD_H1)で'12:00'や'15:00'といった時間のあるバーの数だけでなく、時間のあるバーの数を計算できる関数の組み合わせを教えてください。

マニュアルを全部見たが、何か見落としているのか、適当なものがない。検索エンジンを使っても、結果は同じです。これらの質問が議論された場所を知っているかもしれない、私にリンクを送ってください。

ありがとうございました。