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

 
tara:

ファイル操作で-提供。

どこにそんなことが書いてあるんだ?ドキュメントにないんです。それとも秘密なのか?:)
 
hoz:

どこにそんなことが書いてあるんだ?ドキュメントにないんです。それとも、わざと隠しているのでしょうか?:)

Cファイルはあくまで情報の一部です。データベースを 扱ったことのある人なら、慣れるしかないでしょう。
 
tara:

C言語では、ファイルは単なる情報の塊です。データベースを使って仕事をしてきた人は、データベースから離脱する必要があります。

一般的にはどこにも明記されていないのでは?:)
 
ふむ。
 
こんにちは、インターネット上でTakeProfit/StopLossの合計をルーブル(ドル)で計画利益のレベルに設定し、注文数を変更するとTakeProfit/StopLossのレベル(買い、売りともにオープン)を再計算するアドバイザーがあれば教えていただけませんか?
 
ALXIMIKS:

おいおい、ソース出せよ

最後に閉じたバーの値を1としたのですか?

で、その後ろの4本のバーの値が0.33 0.33 3 3 ?

さて、ばらつきを特徴づけるために自分で何らかの係数を入力しましたが、この係数を[1]バーについて計算したいのでしょうか?




は、値の比率の配列です。これらは絶対値ではなく、指数、比率です。 この意味は、例えば0.5は「50%減」ではなく、2倍という意味です。 と0.2は80%減ではなく、5倍ということです。2または5がちょうどいい、それはポイントを表現する - 2倍と5倍、それぞれ 例配列 1.2 1.02 0.833 10 0.98 0.1 あなたは、平均(この例では、平均は明らかに1になる)を見つける必要があります 算術または幾何平均はここでそれを明確にしない、それは単に値を比較する、これらのメソッドの0にします。5 -これはちょうど50%少ないです。 ロジックを理解するために - 私はすでに書いたように - それはグラフとして提示することも可能です - 値が逆負の小数で表される1より小さいとき。出てくる 1.2 1.02 -1.2 10 -1.02 -10 ここですでにあなたは算術平均を計算できます しかしここで問題があります - 例えば0.2 =それは実際には1.2です(つまりそれは1を加えるべきである) 例えば



















-0 の最終平均場合。2 = 本来は 0.8 (正確には 0.8333) (つまり一般的にも 1 を加える)

しかし、すべての値が例えば 3 の場合、出力は 3 になります。 では、1 を加えるべきかどうか、どうやって判断するのでしょうか? チェック - 値が 1 より小さいなら、イエス? そうでなければ、ノー? どうやらそうらしい もう一度 - これはアルゴリズムによる解決策だ。つまり、条件に応じて複数の変換を行う 私は、もしかしたらもっと簡単な解決策、もしかしたら数式があるのではないかと期待して質問したのだ ;-)) 私はどれが







必要かわからない)
誰もそれを理解できなければ 0.2は80%減ではなく5倍です... 質問を撤回します(((

[update] 見つけたと思います。 2番目の配列を作る際に、値から1を引き、 この単位を最終結果に加えます 0.2 -> 1.2, -0.2 -> -1.2 (これも負の分数に変換しなければならず、 0.833(3) となります)



全て足します

もし、他の、数学的解決法をご存じでしたら感謝いたします。)



 
https://docs.mql4.com/ru/series
チャート上のバーが少ない場合は、MT4の設定で増やしてください。

ありがとうございます。各バーのティックプライスに興味があります。それをまとめてティック数で割って平均価格を求めたいのです。

もしかしたら、MQL4では誰も知らないのに、MQL5ではできるかもしれません。

 
rosomah:

ありがとうございます。各バーのティックプライスに興味があります。それらを合計し、ティック数で割って平均価格を求めたい。

もしかしたら、MQL4では誰も知らなかったことが、MQL5で実現するかもしれません。

まず、カウントする期間(時間)を決める必要があります。例えば、1分間。新しいM1バーが到着したら、到着したティックごとに「ティック」価格値を配列に収集します。配列のサイズは、静的に設定することも、動的に変更することも可能です。次のバーが来たら、平均価格を計算することになります。現在のバーの平均価格は、入力されたティックの数で計算することができます。算出されたデータは、バーの開店時刻と 同期してファイルに書き出すことができます。MT4にはティック履歴はありません。
 
TarasBY:
まず、カウントする期間(時間)を定義する必要があります。例えば、1分間。新しいM1バーが到着したら、到着したティックごとに価格の「ティック」値を配列に収集する必要があります。配列のサイズは、静的に設定することも、動的に変更することも可能です。次のバーが来たら、平均価格を計算 することになります。現在のバーの平均価格は、入力されたティックの数で計算することができます。算出されたデータは、バーの開店時刻と同期してファイルに書き出すことができます。MT4にはティック履歴は ありません。 。

最後の一文をありがとうございました。なんとなく、現在のバーのティック(Ask or Bid?)を合計して、その数で割る、つまり平均値を求めて配列に送る必要があるのかなと思いました。

MQL5にティック履歴が あるのですが、ご存知でしょうか?読んでもいないし、そこにあるわけでもない。