MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 1789

 
MakarFX #:

スクリーンショットから、これらの条件は満たされていません。

//+------------------------------------------------------------------+
//| Открытие ордера                                                  |
//+------------------------------------------------------------------+
void SendFirsOrder(int so=-1)
  {
   double tp=0;
   if(so==0)
     {
      if(OrderSend(Symbol(),OP_BUY, Lots(),Ask,slip,0, 0, "The first purchase order", Magic,0,clrBlue))
        {
         Print("Open Buy: ",_Symbol);
        }
      else
        {
         Print("Error Open Buy: ",_Symbol," / ",GetLastError());
        }
     }
   if(so==1)
     {
      if(OrderSend(Symbol(),OP_SELL, Lots(),Bid,slip,0, 0, "The first sell order", Magic,0,clrRed))
        {
         Print("Open Sell: ",_Symbol);
        }
      else
        {
         Print("Error Open Sell: ",_Symbol," / ",GetLastError());
        }
     }
  }
 
EVGENII SHELIPOV #:

OrderStopLoss() が0に等しい場合、どのようにトロールを動作させることができ、条件では

        if(OrderSymbol() == Symbol() && OrderMagicNumber() == Magic && OrderProfit() > 0 && OrderStopLoss() != 0)
 
Nerd Trader #:

誰が見ても問題ない。
コメントの前後に 空白行が ある場合:

を挿入します。



しかし、そんなことはどうでもよくて、別のideを使えばいいのです。

コメント行と関数宣言の間に空白行を使用するのはなぜですか?

 

こんにちは。

最近MT5に乗り換え、いろいろな記事を読みましたが、私の疑問に対する答えは見つかりませんでした。

MT5では、"slowoptimization "タイプ(パラメータを完全に検索する)を有効にすることができます。最適化のためのツールを1つ選択しなければならない。

MT5にはテスターで複数のシンボルを選択し、そのシンボルで全てを最適化する機能があるのでしょうか。すなわち、まず1つ目を試し、次に2つ目を試す、といった具合です。そして最終的には、各シンボルごとに別々のレポートを取得することになるのですね。あるいは、この質問に対する他の解決策があるのか、あるいは、このためのプログラムが他にあるのか?

テストツールが終わっても、パソコンのそばで待っているのはNGということです。そしてすぐに必要なものをすべてセットして、一日中カウントさせる。

 
Kot optimization "タイプ(パラメータを完全に検索する)を有効にすることができます。最適化のために1つのツールを選択することができる。

MT5にはテスターで複数のシンボルを選択し、そのシンボルで全てを最適化する機能があるのでしょうか。すなわち、まず1つ目を試し、次に2つ目を試す、といった具合です。そして最終的には、各シンボルごとに別々のレポートを取得することになるのですね。あるいは、この質問に対する他の解決策があるのか、あるいは、このためのプログラムが他にあるのか。

テストツールが終わっても、パソコンのそばで待っているのはNGということです。そしてすぐに必要なものをすべてセットして、一日中カウントさせる。

各ペアに1つずつ、複数の端子を走らせる
 

条件を無視してボタンを離すと、オブジェクトが削除されても、何らかの理由で必ずObjectDelete()が実行されます。

void OnChartEvent(const int id, const long &lparam, const double &dparam, const string &sparam)
{
   ...
  if(ObjectGetInteger(0,"Button Stop Order",OBJPROP_STATE)){
      if(ChartXYToTimePrice(window,x,y,window,dt,price)){
         ...
  }else if(ObjectFind("order setup") || ObjectFind("Stop Loss"))
      Print(line_name," delete ",ObjectDelete(line_name)," error ", GetLastError());

2021.12.05 21:43:14.040 USDCHF,M1: Stop Loss delete false error 0
2021.12.05 21:43:14.040 USDCHF,M1: Stop Loss delete false error 0
2021.12.05 21:43:14.030 USDCHF,M1: Stop Loss delete false error 0
2021.12.05 21:43:14.030 USDCHF,M1: Stop Loss delete false error 0
2021.12.05 21:43:14.030 USDCHF,M1: Stop Loss delete false error 0
2021.12.05 21:43:14.030 USDCHF,M1: Stop Loss delete false error 0
2021.12.05 21:43:14.030 USDCHF,M1: Stop Loss delete false error 0
2021.12.05 21:43:14.020 USDCHF,M1: Stop Loss delete false error 0
2021.12.05 21:43:14.020 USDCHF,M1: Stop Loss delete false error 0
2021.12.05 21:43:14.020 USDCHF,M1: Stop Loss delete false error 0
2021.12.05 21:43:14.020 USDCHF,M1: Stop Loss delete false error 0
 
Alexey Viktorov #:

コメント行と関数宣言の間に空白行があるのはなぜですか?

つまり、イデがあなたのコードにあなたの同意なしにクソを挿入しても、それは問題ないと言うのですか?
 
Nerd Trader ボタンを離すと、オブジェクトが削除されても、何らかの理由で必ずObjectDelete()が実行されます。
void OnChartEvent(const int id, const long &lparam, const double &dparam, const string &sparam)
{
   ...
  if(ObjectGetInteger(0,"Button Stop Order",OBJPROP_STATE)){
      if(ChartXYToTimePrice(window,x,y,window,dt,price)){
         ...
  }else if(ObjectFind("order setup")==0 || ObjectFind("Stop Loss")==0){
      Print(line_name," delete ",ObjectDelete(line_name)," error ", GetLastError());
 
MakarFX #:
ええ、まあ、ここまではいいんですけどね。
 
Nerd Trader #:
ええ、まあ、私は本当にクソうんざりしています。
以前にも書きましたね