[ARCHIVE!] フォーラムを散らかさないように、どんなルーキーの質問でも。プロフェッショナルは、通り過ぎないでください。あなたなしではどこにも行けない - 4. - ページ 266

 
Stells:

こんにちは。

ジョブ(https://www.mql5.com/ru/job)でインディケータやアドバイザーを注文する方法が見つかりません。口座に資金を投入しました。

リンク先を教えてください。

https://www.mql5.com/ru/articles/117
 
PapaYozh:


https://www.mql5.com/ru/forum/100321

PS.Yusufさん、フォーラム検索が効きますね。

ありがとうございます。そこのリンクを見ると、ソフトウェアで解決しているようですが、どうすればいいのかわかりません。これは何と関係があり、どうすればこの問題を解決できるのでしょうか?1ヶ月間、EAが正常に動作していたのに、なぜ不具合が発生するのですか?もし、エラーがコードにあったのなら?質問への回答で負担がかかるようでは、このスレッドは初心者向けではないことがわかりました。悔しいです。
 

最後のバーの終値 = Time[1]、と理解すればよいのですが。

現在が午前9時であることを知るにはどうすればよいのでしょうか?

 

このコード片のおおよその意味を少なくとも説明してください。

int CalculateCurrentOrders(文字列シンボル)

{

int buys=0,sells=0;

//----

for(int i=0;i<OrdersTotal();i++)

{

if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false)ブレーク。

if(OrderSymbol()==Symbol() && OrderMagicNumber()==MAGICMA)

{

if(OrderType()==OP_BUY) buys++;

if(OrderType()==OP_SELL) sells++;

}

}

//---- リターンオーダー数

if(buys>0) return(buys);

else return(-sells);

}

 
fmillion:

最後のバーの終値 = Time[1]、と理解すればよいのですが。

現在が午前9時であることを知るにはどうすればよいのでしょうか?


int h=TimeHour(Time[0]);
if(h==9)-->...
datetime 時刻[]。
現在のチャートの各バーの開始時刻を 含む配列time。datetime 型のデータは、1970 年 1 月 1 日の 00:00 からの時間を秒単位で表します。
 
int(), deint(); start() 関数からターミナルへの return() コマンドで返されるコードはどこを見ればいいのか、教えてください。それぞれどんな意味があるのでしょうか?ところで、この問題を「フォーラム・ナビゲーター」で強調するとよいでしょう(このリターンコードに関するユーザーの質問に何度も出くわします)。
 
drknn:
int(), deint(); start() 関数からターミナルへの return() コマンドで返されるコードはどこにあるか教えてください。そして、それらが意味すること。ところで、この問題を「フォーラム・ナビゲーター」で強調するとよいでしょう(このリターンコードに関するユーザーからの質問に何度も出くわします)。
指定したものは、指定したシステム関数の種類によって、返ってきます。システムコールは0を返します。
 
okvseok:

このコード片のおおよその意味を少なくとも説明してください。

これはオーダーカウンターです。まあ、例えば、ある通貨ペアで、あるマジックナンバーの買い注文があるかどうか、コードで知りたいということもあるでしょうね。ある場合、例えば、別の買い注文を開くことはできません。だから、オーダーカウンターは判断材料として必要なのです。
 
Zhunko:
指定されたシステム関数の種類に応じて、指定されたものを返します。システムコールはゼロを返します。


オッケーです。Int start()を宣言する。私はいつもゼロを返しています。return(-1)とreturn(-2)の両方がコードに含まれているのを見たことがあります。このコードの正しい選び方とは?

追伸

あと、もう一つ当然の疑問なのですが、EA/インジケータ/スクリプトのstart()をint() 以外の型に宣言して、ターミナルに何を返すかは可能なのでしょうか?つまり、return()で返された値を端末がどうするのか?

 
yosuf:
ありがとうございます。リンク先のそこに、ソフトウェアでの解決方法が書いてあるのですが、どうしたらいいのかわかりません。これは何と関係があり、どうすればこの問題を解決できるのでしょうか?1ヶ月間、EAが正常に動作していたのに、なぜ不具合が発生するのですか?もし、エラーがコードにあったのなら?質問への回答で負担がかかるようでは、このスレッドは初心者向けではないことがわかりました。悔しいです。

そんなことを開始直後のEAに書いてしまいました。

//--- Section A: start - checking.
   if (!IsExpertEnabled())
      {Comment("Expert is NOT working. Check the reason."); return(0);}
   if (!IsConnected())
      {Comment("No connection!"); return(0);}
   if (IsTradeContextBusy())
      {Comment("Trade flow is busy. Wait..."); Sleep(5*1000); return(0);}
   if (AccountFreeMargin()<1000*Lot_super)
      {Comment("No money to trade. Free Margin = ",AccountFreeMargin()); Sleep(20*1000); return(0);}
//--- Section A: end - checking.

もしかしたら、あなたにも役立つことがあるかもしれません。