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

 
Seric29:
C++のDLLでdatetameとcolor型の変数を実装する方法は?dllでPrint()関数を 呼び出す方法c++には無いので何で代用するか、mql4にはデバッグが無いのでよく間違える、初めて書くものは難しい、どうしたらいいのか?

F1キーを押してみてください。

"datetime型は 日付と時刻を1970年1月1日からの経過秒数で格納するように設計されて います。 メモリ内で8バイトを占有する。"

カラータイプで - 自分で練習してください :-)

---

Dllをデバッグする場合、Print関数の代わりに、ファイルにプリントして、その中を見ることができます。

 
Maxim Kuznetsov:

F1キーを押してみてください。

カラータイプで - 自分で練習してください :-)

---

Dllをデバッグする場合、Print関数の代わりに、ファイルにプリントして、その中を見ることができます。

Print()については理解できました、ありがとうございます、コンソールは出力できます、C++でファイルを扱うことができないので、ここで、datetimeについては、全く理解できません、なぜ書いたのでしょうか?

 
Seric29:

print()については理解できました、アドバイスありがとうございます、コンソールは出力できます、C++でファイルを扱う方法をまだ知らないのでここで、datetimeについては、なぜそれを書いたのか全く理解できませんでした?

C/C++での表現がすべてです

8 バイトの符号なし整数 unixtime、つまり uint64_t か time64_t のどちらかです。

 
Maxim Kuznetsov:

と、C/C++での表現についてのすべてが書かれています。

8 バイトの符号なし整数 unixtime、つまり uint64_t または time64_t です。

uint64_tもtime64_tもうまくいかないので、<uint64_t>も書いてみた。そして、どのように色を扱うかも明確ではありません、私はあまりにもネットワークで説明を見つけられませんでした、私はこの問題の2年目に従事している?

 
Seric29:

uint64_tもtime64_tも動作しない <uint64_t> と書いてみても動作しない。そして、色の扱い方もよくわからないし、ウェブで調べても何の説明もない。

MetaTraderやDLLは抜きにして、まずはC/C++を勉強すればいいんじゃないでしょうか。そうでなければ、フラストレーションと無駄な努力以外の何ものでもないでしょう。

#include <ctime>

// или для uint64_t (что на мой взгляд вернее)

#include <cstdint>

http://www.cplusplus.com/reference/ をご覧ください。

Reference - C++ Reference
Reference - C++ Reference
  • www.cplusplus.com
The elements of the C language library are also included as a subset of the C++ Standard library. These cover many aspects, from general utility functions and macros to input/output functions and dynamic memory management functions: Containers Input/Output Stream Library Provides functionality to use an abstraction called streams specially...
 
Maxim Kuznetsov:

MetaTraderやDLLは抜きにして、まずはC/C++を勉強すればいいんじゃない?そうでなければ、イライラして無駄な作業をすることになります。

#include <ctime>

// или для uint64_t (что на мой взгляд вернее)

#include <cstdint>

http://www.cplusplus.com/reference/ をご覧ください。

私の理解が正しければ、極端な点を取って秒単位でカウントするのですが、通常のフォーマットを表示する方法が分かりません。例を挙げてほしい。そして、色との付き合い方は?

 

変数time_tが秒を格納する場合、このフォーマットで日付を生成する方法は明らかではありません2008.09.23 00:00?

time_t Data()
{ return 100;} Что функции в с++ так выглядят
 

インターネットで見つけたどんな例も、コンパイルすることすらできません......そのうちのひとつをご紹介しましょう。

int main()
{ 
  time_t rawtime;
  struct tm * ptm;
  time( &rawtime );                                     // определить текущую дату в секундах
  ptm = gmtime( &rawtime ); 
return 0;}
明らかに、このままでは何も理解できない。
 

こんにちは。

セルストップを開くときに、希望価格を格納する変数を価格パラメータに指定すると、誓うことになるのですが、その理由を教えてください。


int ZeroBufer;              // ticket zero
struct Order_Data_S // Структура которая заполняется по мере поступления данных.
  {
   int               ticket;
   double            price;
  };
Order_Data_S OrderBufer_S[100];

void OnTick()
  {
  double prise_s = MarketInfo(Symbol(), MODE_BID);
  double zero = prise_s;
  OrderSelect(OrderBufer_B[0].ticket,SELECT_BY_TICKET,MODE_TRADES);  //return value of 'OrderSelect' should be checked  

   if(OrderType() == 0) // открыт bay ордер
     {
      ZeroBufer = OrderSend(Symbol(),OP_SELLSTOP,lots,OrderBufer_S[0].price),3,0,0,"bs2",2,0,clrRed);  // sell stop на шаг сетки.  // 'OrderSend' - wrong parameters count. 
      //',' - unexpected token. И еще 100500 ошибок на эту строку. OrderBufer_S[0].price не пустой. Там уже находится нужная цена.
      
      if(OrderSelect(ZeroBufer,SELECT_BY_TICKET,MODE_TRADES) != true)
        {
         ZeroBufer = OrderSend(Symbol(),OP_SELLSTOP,lots,zero),3,0,0,"bs2",2,0,clrRed);
        }  // повторить, пока не откроет
     }
     }
     
     // Если вместо "OrderBufer_S[1].price" воткнуть другую переменную "zero" - в которой хранится цена, то он снова ругается, но гораздо меньше.
     // Его не устраивает эта переменная

この場合、どうしたらいいのでしょうか?

そしてもう一つ質問です。次に注文が開かれているかどうかを確認する方法は?つまり、これが最初の注文であれば、スタックからトレードを選択し、そのタイプをチェックする現在のコードで大丈夫です。しかし、後になって、何か混乱が起きているのではないかという思いが湧いてきました。複数のオーダーがある場合、このオーダーは開いたばかりなのか、すでにずっと前からあったのか、どうやって知ることができるのでしょうか?フォーラムで確認したところ、価格を基準にするようにとのアドバイスがありました。この価格±偏差で注文があるかどうか、判断してみる必要があります。しかし、またしても同じ質問です。これが新しい秩序なのか古い秩序なのか、どうやって判断するのでしょうか。保留中の注文から開いたのか、それともすでにそこに注文があり、価格がその水準に達しただけなのか。

 
Gilmor:

こんにちは。

セルストップを開くときに、希望価格を格納する変数を価格パラメータに指定すると、誓うことになるのですが、教えてください。


この場合、どうしたらいいのでしょうか?

ブラケットの組合せに注目してください。

ZeroBufer = OrderSend(Symbol(),OP_SELLSTOP,lots,OrderBufer_S[0].price),3,0,0,"bs2",2,0,clrRed);