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

 
こんにちは、私は現在EAを利用して取引をしています。
これらのパラメータを使用して独自のEAを作成することができるかどうか、アドバイスをお願いします。
------------------------------------------------------------------------------
GridA=true
GridB=true
GridC=true
OrdersSideOptimize=trueとする。
StopTradeAfterTP_GridA=false。
StopTradeAfterTP_GridB=false。
StopTradeAfterTP_GridC=false
MaxTrades_GridA=15
MaxTrades_GridB=15
MaxTrades_GridC=15
MagicNumber_GridA=7771
MagicNumber_GridB=7772
MagicNumber_GridC=7773
MaxLots=100.0
AutoMM=3.0
T6="ロット設定"
BaseOrderLevel=1
LotExponent=1.33
T7="TakeProfitの設定"。
テイクプロフィット=125.0
スリッページ=3.0
T10="ステップ設定"
Step_GridA=170.0
Step_GridB=170.0
Step_GridC=200.0
DistanceExponent=1.18
BaseDistanceOrder=10

ノーブルサベージによろしく
 

こんにちは。教えていただけますか?


コンパイル時にエラーが発生する。

if(flag_Cl_Buy = "on" && Ask>=BB)

'&&' - 不正な操作の使用

このキャラクターは論理的なANDです。'&&' の翻訳が不正な操作で使用されています。)))

どうしたんですか?))

標準的なブランチングです。条件1(flag_Cl_Buy = "on")で、価格値が指定値以上であれば、その内容にする。このANDはどうしたんだ?


 
Gilmor:

こんにちは。教えていただけますか?


コンパイル時にエラーが発生する。

'&&' - 不正な操作の使用

このキャラクターは論理的なANDです。'&&' の翻訳が不正な操作で使用されています。)))

どうしたんですか?))

標準的なブランチングです。条件1(flag_Cl_Buy = "on")で、価格値が指定値以上であれば、その内容にする。このANDはどうしたんだ?


==

つまり、比較は「==」、符号を一つ見落としている。

 
Gilmor:

こんにちは。教えていただけますか?


コンパイル時にエラーが発生する。

'&&' - 不正な操作の使用

このキャラクターは論理的なANDです。'&&' の翻訳が不正な操作で使用されています。)))

どうしたんですか?))

標準的なブランチングです。条件1(flag_Cl_Buy = "on")で、価格値が指定値以上であれば、その内容にする。このANDはどうしたんだ?


比べているのではなく、割り当てて いるのです。

if(flag_Cl_Buy = "on" && Ask>=BB)

比較すると こんな感じです。

if(flag_Cl_Buy == "on" && Ask>=BB)
 
dodon_:
こんにちは、親愛なる友人の皆さん、私は現在エキスパートアドバイザーの助けを借りて取引をしています。
このパラメータを元に自分でEAを書けるかどうか教えてください。

私が見たわずかな回答から、何でも書けるし、優秀な人でもどこに疑問や間違いがあるのか教えてくれる。しかし、誰もあなたに書き込まないし、そのような漠然とした質問で、ほとんどの場合、彼らは証券取引所にあなたを送ります。

https://www.mql5.com/ru/job

Торговые приложения для MetaTrader 5 на заказ
Торговые приложения для MetaTrader 5 на заказ
  • www.mql5.com
Добрый день. Нужно написать советника на основе мартингейла работающего в обе стороны с усреднениями на ТФ м1/м5/м15/Н1/Н4/D1 , с тейк профитом но без стоп лоса, для центового счета, с функцией привязки советника на определенные счета. Требуются данные входные параметры для управления советником: Стратегия GridA: включить/выключить стратегию...
 
Vladimir Karputov:

比べているのではなく、割り当てて いるのです。

比較すると こんな感じです。

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

 

あらかじめ謝っておきます。もう2つほど質問をさせてください。

わからないところはアドバイスをお願いします。MQL4


void OnTick()
  {
//---
............
тело самого советника
.........
return;
  }

どのようなエラーが発生するのでしょうか?発生させるのです。

OnTick' - グローバル、名前空間、またはクラススコープでのみ関数宣言が可能です。

OnTick' - 既に定義された関数で、本体があります。

関数 'OnTick' の前の宣言を参照してください。

'}'- 以下は、プログラム終了時のエラーです。

括弧が強調されているので、再確認してみました。OnTick'関数の閉じ括弧である。

この関数の前には変数宣言と int OnInit(), void OnDeinit(const int reason) があるだけです。

-----------------------------

私はこのフォーラムから、すべての注文をクローズする簡単な解決策を盗みました。

for(z=OrdersTotal()-1; z>=0; z--)    // закрытие всех ордеров.
        {
         if(OrderSelect(z,SELECT_BY_POS)==true && OrderSymbol() == Symbol())
           {
            OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),3,Red);
           }
        }

黄色いアイコンが表示され、返された値を再確認するように言われる。戻り値を確認する必要がない。何を暗示しているのでしょうか。

------------------------------

スイッチオペレータ

スイッチのこと。 表現のこと。

switch(flag_1)

その名の通りフラッグ。解に応じて、計算中にフラグ値の1つに切り替わります。マーカーです。このフラグのマーカ(値)は3である。ゼロ"、"買い"、"売り "です。

string flag_1 = "zero";

void OnTick()
  {
switch(flag_1)
     {

      case "zero":
  .............
...............
break;
     case "BUY":
 .............
...............
 break;
    case "SELL":
 .............
...............
 break;
return;
}
}

そして、何でもかんでも好きになるわけではありません。flag_1自体もその値も ない。どうすれば直るのか?数字を押し付けられるのは嫌だ。視覚的には、x=1、2、3という数字しかない方が分かりやすい。:( テキストラベルはダメなのでしょうか?

-------------------------------

// Удалить старую отложку
            OrderDelete(OrderBufer_B[i].ticket,clrRed);
            if(OrderSelect(OrderBufer_B[i].ticket,SELECT_BY_TICKET,MODE_TRADES) = true)
              {
               OrderDelete(OrderBufer_B[i].ticket,clrRed);
              }  // повторить

エラー

OrderDelete の戻り値をチェックする必要があります。

'OrderSelect' - l-value必須

'=' - l 値が必要

このプロセスに全く意味はないのでしょうか?注文に関連するすべてのアクションを、それが完了するまでループさせる必要があるのでしょうか? あるいは、サーバーが、今、忙しくても、リクエストを処理してくれるのか?

今すぐ売りたい、買いたいという注文をマーケットに出すと、サーバーが空くニュースの時点ですでに価格が大きく下がっていて、注文が通らないということがあるのは理解しています。




 
Gilmor:

あらかじめ謝っておきます。もう2つほど質問をさせてください。

理解できないところにアドバイスをお願いします。MQL4


どのようなエラーが発生するのでしょうか?発生させるのです。

OnTick' - グローバル、名前空間、またはクラススコープでのみ関数宣言が可能です。

OnTick' - 既に定義された関数で、本体があります。

関数 'OnTick' の前の宣言を参照してください。

'}'- 以下は、プログラム終了時のエラーです。

括弧が強調されているので、再確認してみました。OnTick'関数の閉じ括弧である。

この関数の前には変数宣言と int OnInit(), void OnDeinit(const int reason) があるだけです。

-----------------------------

私はこのフォーラムから、すべての注文をクローズする簡単な解決策を盗みました。

黄色いアイコンが表示され、返された値を再確認するように言われる。戻り値を確認する必要がない。何を暗示しているのでしょうか。

------------------------------

スイッチオペレータ

スイッチのこと。 表現のこと。

その名の通りフラッグ。解に応じて、計算中にフラグ値の1つに切り替わります。マーカーです。このフラグのマーカ(値)は3である。ゼロ"、"買い"、"売り "です。

そして、何でもかんでも好きになるわけではありません。flag_1自体もその値も ない。どうすれば直るのか?数字を押し付けられるのは嫌だ。視覚的には、x=1、2、3という数字しかない方が分かりやすい。:( テキストラベルはダメなのでしょうか?

-------------------------------

エラー

OrderDelete の戻り値をチェックする必要があります。

'OrderSelect' - l-value必須

'=' - l 値が必要

このプロセスに全く意味はないのでしょうか?注文に関連するすべてのアクションを、それが完了するまでループさせる必要があるのでしょうか?あるいは、サーバーが、今、忙しくても、リクエストを処理してくれるのか?

今、市場を買う/売るという注文の場合、サーバーが空くニュースの時点で、すでに価格が大きく下がっていて、リクエストが実行されないことがあるのは理解しています。




OrderSend, OrderDelete, OrderClose, OrderModify の結果を確認する必要がある。これはあくまでも、良識あるルールを警告に昇格させたものです。

そして、"lvalue "エラーは、皆さんが大好きな比較と代入のミックスアップです。

PS/まあMTのプログラミングは習わないんですね。MTは過酷なアプリケーションです。

 
Gilmor:

あらかじめ謝っておきます。もう2つほど質問をさせてください。

理解できないところにアドバイスをお願いします。MQL4


どのようなエラーが発生するのでしょうか?発生させるのです。

OnTick' - グローバル、名前空間、またはクラススコープでのみ関数宣言が可能です。

OnTick' - 既に定義された関数で、ボディを持ちます。

関数 'OnTick' の前の宣言を参照してください。

'}'- 以下は、プログラム終了時のエラーです。

括弧が強調されているので、再確認してみました。OnTick'関数の閉じ括弧である。

この関数の前には変数宣言と int OnInit(), void OnDeinit(const int reason) があるだけです。

-----------------------------

私はこのフォーラムから、すべての注文をクローズする簡単な解決策を盗みました。

黄色いアイコンが表示され、返された値を再確認するように言われる。戻り値を確認する必要がない。何を暗示しているのでしょうか。

------------------------------

スイッチオペレータ

スイッチのこと。 表現のこと。

その名の通りフラッグ。解に応じて、計算中にフラグ値の1つに切り替わります。マーカーです。このフラグのマーカ(値)は3である。ゼロ"、"買い"、"売り "です。

そして、何でもかんでも好きになるわけではありません。flag_1自体もその値も ない。どうすれば直るのか?数字を押し付けられるのは嫌だ。視覚的には、x=1、2、3という数字しかない方が分かりやすい。:( テキストラベルはダメなのでしょうか?

-------------------------------

エラー

OrderDelete の戻り値をチェックする必要があります。

'OrderSelect' - l-value必須

'=' - l 値が必要

このプロセスに全く意味はないのでしょうか?注文に関連するすべてのアクションを、それが完了するまでループさせる必要があるのでしょうか?あるいは、サーバーが、今、忙しくても、リクエストを処理してくれるのか?

今すぐ買う/売るという注文の話であれば、サーバーが空くニュースのタイミングで、価格が遠くまで行ってしまい、注文が成立しないこともあり得ます。




2つのOnTick関数があります。


switch 演算子の式は整数型でなければならない。

 
Artyom Trishkin:

はい、別のトピックを作成してください。ただ、トピックを作成するためにフォーラムの適切なセクションを選択するようにしてください。

はい、わかりました。MQL4とMetaTrader4」は 大丈夫ですか? それとも "Indicators "の方がいいのでしょうか?