MQL 4に関するプログラマーへの質問と回答

 

どなたか、コードやリンクをご存知の方、教えてください。
コードは以下の通りです。指定したポイント数の利益を設定するEAが必要 - 価格が指定したポイントに達したときにストップロス
価格が設定した利益ポイントに達したときにストップロスを入れるアビッド。

 
通常のトレーリングストップ - Xピップスの利益に達すると、ストップロスは現在の価格から 指定されたピップ数離れたレベルに設定されます。
 
drknn >>:
Обычный трейлингстоп - по достижении икс пунктов прибыли стоп-лосс устанавливается на уровень, отстоящий от текущей цены на указанное количество пунктов.

はい、わかりました。MQL4プログラムのコードが必要なのです。

そして、トレーリングストップは必要なく、変更不可能なレベルに一度だけ設定する必要があるのです。

 

ブレークイーブン」で検索してください。

 
Roger >>:

Ищи по поиску "безубыток".

検索クエリ - Break-even のトピックに目を通したところです。

その結果、探していた具体的なコードは見つかりませんでした。

 
alex12 >>:

Только сейчас закончил просмотор тем по запросу в поиске - Безубыточность.

Результат - ни одного конкретного мне нужного кода я не нашел.

そして、アドバイスされたように「ブレークイーブン」という言葉で検索してみてください。

 
alex12 >>:

Да это понятно-мне нужен код прграммы MQL4 - чтобы наглядно понять последовательность и какие значения используются.

И нужен мне не следящий Трэйлингстоп,а единожды выставленный на неизменяемый уровень.


この場合、非常にシンプルです。EAに標準的なプログラムのトロールを組み込みますが、それは関数start()の中で最後になります。その前に、次のようなアルゴリズムを持つコンストラクトがあるはずです。
- ブーリアン変数を宣言し、値 "False "を代入する。
- 私たちの注文を探す。ストップロスがオープンポジションより低い場合、ブーリアン変数に "True "を代入します。それ以外の場合は,コマンド return(0)を実行します.
また、別のオーダーではなく、この特定のオーダーがトロールされるべき符号と、スイッチとしての変数をトロールに渡します。

この場合、どうなるのでしょうか?価格があらかじめ設定された利益のレベルに達していない限り、トロールは定義上機能しない。到達すると同時に、ストップが引き上げられる。次のティックでは、EAは必要な注文がストップロス=オープンポジションであることを検知し、トロールを動作させません - switch変数がそれをfalseに設定するのです。

これは一番簡単な方法ではないですが、すでにトロールのコードができている場合は、コードを書き換えて、デバッグ、テスト、検証...という作業をするよりも、この方法の方が簡単です。

 
drknn писал(а)>>


この場合、非常に簡単です。EAに標準的なトロールを埋め込むことでこれを行いますが、start()関数の中では最後になります。その前に、次のアルゴリズムを使用するコンストラクトがあるはずです。
- ブーリアン変数を宣言し、値 "False "を代入する。
- 私たちの注文を探す。ストップロスがオープンポジションより低い場合、ブーリアン変数に "True "を代入します。それ以外の場合は,コマンド return(0)を実行します.
また、別のオーダーではなく、この特定のオーダーがトロールされるべき符号と、スイッチとしての変数をトロールに渡します。

この場合、どうなるのでしょうか?価格があらかじめ設定された利益のレベルに達していない限り、トロールは定義上機能しない。到達すると同時に、ストップが引き上げられる。次のティックでは、Expert Advisorは必要な注文がストップロス=オープンポジションであることを検出し、トロールを動作させない - スイッチ変数がそれを偽に設定されます。

これは一番簡単な方法ではないですが、すでにトロールのコードができている場合は、コードを書き換えて、デバッグ、テスト、検証...という作業をするよりも、この方法の方が簡単です。


コメントありがとうございます!私はまだプログラミングの勉強中なので、簡単なExpert Advisorはまだ書いていません。
暇なときに、あなたのヒントを是非使ってみましょう。私はトロールのコードを準備しています。
 
alex12 >>:


Большое Вам спасибо за комментарий.Но я еще только учусь программировать и пока что не написал ни одного простого советника.
На досуге обязательно воспользуюсь Вашей подсказкой - готовый код трала у меня есть.


エディターで新規にEAを作成します。start()関数の中に、次のように記述してください。
Alert("Bid = ",Bid);
コンパイルして、チャートに貼る。その結果、1ティックごとに現在のBidのメッセージを表示するウィンドウが表示されます。
シンプルなExpert Advisorが作成されました。これは、EAのコードが1ティックごとに新しく起動されることを示す主なものです。
OrderSend()関数は、注文の発注に使用されます。通常、使用する前に、プログラマーは最後のろうそくの流れを分析し、注文が開かれなければならない場所を特定するコードを実行します。
関数名の文字の間にマウスカーソルを置き、F1またはCtrl+F1を押すと、その言語関数のコンテキストヘルプがコードウィンドウの下部に表示され、すぐにその関数のパラメータを見つけることができます。
 
drknn писал(а)>>

エディターで新規にEAを作成します。start()関数の中に、次のように記述してください。
コンパイルして、チャートに貼る。その結果、1ティックごとに現在のBidのメッセージを表示するウィンドウが表示されます。
シンプルなExpert Advisorが作成されました。これは、EAのコードが1ティックごとに新しく起動されることを示す主なものです。
OrderSend()関数は、注文の発注に使用されます。通常、使用する前に、プログラマーは最後のろうそくの流れを分析し、注文が開かれなければならない場所を特定するコードを実行します。
関数名の文字の間にマウスカーソルを置き、F1またはCtrl+F1を押すと、その言語関数のコンテキストヘルプがコードウィンドウの下部に表示され、すぐにその関数のパラメータを見つけることができます。
ありがとうございます。以前から、せめて何か簡単な、間違いのないEAを書きたいと思っていました。
 

こんにちは。

フォーラムメンバー、およびこのサイトに含まれる資料の責任者の皆さんに質問があります。

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

このリンク先でhttps://www.metatrader5.com/ru/terminal/help/indicators/trend_indicators/envelopes

ページの一番下に「警告」があります。

警告:これらの資料のすべての権利は、MetaQuotes Software corp.に帰属します。

全部または一部を複製することは禁じられています。

Question:自分のEAでEnvelopesというインジケータを使いたいのですが、Warningを読んだら、このインジケータを使いたいと思いました。

具体的にどうすればいいのかわからない。

Meta Quotes Software 社のウェブサイトには、連絡先として電話番号のみが記載されており、住所は記載されていませんので、連絡することは困難です。

- だから、ここで質問したんです。

上記の警告は、具体的にどのような人に、どのような条件で適用されるのでしょうか?

理由: