[ARCHIVE]フォーラムを乱立させないために、どんなルーキーの質問でも。プロフェッショナルの皆さん、通り過ぎないでください。あなたなしではどこにも行けない - 5. - ページ 354

 
Valsorya:

Good afternoon !!!

アルパリは分数の配列を普通にDLLに渡さないので、Expert Advisorのどこかにエラーがあるのではと思ったのですが、どうすればいいのでしょう?insta,forexfo4yuに全てのファイルをコピーしました - 全てが正しく転送されています!インスタ、forexfor4Uにすべてのファイルをコピーしました。dllに直接渡すなんて、だらしない!insta,forex4yuで使える!alpariでは使えない!?これはある種のガラクタだ!うまくいかない! 明日やるしかない。分数を整数として伝送するために、例えば、全部に10万をかけて、dllで10万で割って分数を出すなど、明日からひねり出す必要がありそうです。でも、契約書のサイズは10万円...1万倍すると整数に収まらないんです。

多分、誰かがやり方を知っていて、EAが書いているのでしょう。

コードを見せてください。
 
baylimitを50pips毎にオープンさせ、オープンしたらそれ以上オープンさせない方法をご教示ください。
 

取引開始時のAccountEquity()の金額を知るにはどうしたらいいですか?

 
Elektronik:

取引開始時のAccountEquity()の金額を知るにはどうしたらいいですか?


は自分で計算してください。
またはコードベースからインジケータをダウンロードしてください。

 

初心者のためのmql4プログラミング文献のアドバイス、参考文献を提供できる方

 

Alertを無効にする方法、インストールしましたが、テーブルに表示されません。

 
指定した価格で「by」の未決済注文があるかどうかを確認するにはどうすればよいですか?
 

Expert Advisorのどこかにエラーがあるのでは!?insta,forexfo4yuに全てのファイルをコピーしました - 全てが正しく転送されています!インスタ、forexfor4Uにすべてのファイルをコピーしました。dllに直接渡すなんて、だらしない!insta,forex4yuで使える!alpariでは使えない!?これはある種のガラクタだ!うまくいかない! 明日やるしかない。分数を整数として伝送するために、例えば、全部に10万をかけて、dllで10万で割って分数を出すなど、明日からひねり出す必要がありそうです。でも、契約書のサイズは10万円...1万倍すると整数に収まらないんです。

多分、誰かがやり方を知っていると思うので、書きます。ここにコードを入れるように言われた。

を mql で使用します。

をヘッダーに追加しました。

//+------------------------------------------------------------------+
#import "ファイル名がわからない)).dll"

void SendDataToDLL(int SendDataToDLL_DataForDLL_int[50],
double SendDataToDLL_DataForDLL_double[50],
int SendDataToDLL_ArrayOfErrors[30],
int SendDataToDLL_ArrayOfWornings[10]);
...

#インポート
//+------------------------------------------------------------------+
...
//+------------------------------------------------------------------+
int init()
{...
CreateDataForDLL()です。
SendDataToDLL(DataForDLL_int,
DataForDLL_double。
DataToDLL_ArrayOfErrors,
DataToDLL_ArrayOfWornings) を使用します。
...
}
//+------------------------------------------------------------------+
void CreateDataForDLL()
{...
int CreateDataForDLL_i = -1;
...
CreateDataForDLL_i++; DataForDLL_double[CreateDataForDLL_i] = AccountLeverage().DataForDLL_double[CreateDataForDLL_i] = AccountLeverage();
CreateDataForDLL_i++; DataForDLL_double[CreateDataForDLL_i] = AccountStopoutLevel().DataForDLL_double[CreateDataForDLL_i] = AccountStopoutLevel();
CreateDataForDLL_i++; DataForDLL_double[CreateDataForDLL_i] = AccountBalance().DataForDLL_double[CreateDataForDLL_i] = AccountBalance();
CreateDataForDLL_i++; DataForDLL_double[CreateDataForDLL_i] = AccountCredit().DataForDLL_double[CreateDataForDLL_i] = AccountCredit();
...
}

//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+

C++で

もちろんヘッダで宣言して、cppで書く。

extern "C" __declspec(dllexport) void __stdcall SendDataToDLL(int SendDataToDLL_DataForDLL_int[50].C_DataToDLL_DataForDLL_int[50].C_DataToDLL_DataForDLL_int[50],
double SendDataToDLL_DataForDLL_double[50],
int SendDataToDLL_ArrayOfErrors[30],
int SendDataToDLL_ArrayOfWornings[10])
{...
int SendDataToDLL_i; SendDataToDLL_i = 0;
// int 配列を問題なくブロック解除します.
...
SendDataToDLL_i = 0;
...//InputData - 構造体...大したことない...。
SendDataToDLL_i++; InputData.AccountLeverage = SendDataToDLL_DataForDLL_double[SendDataToDLL_i].AccountLeverage = SendDataToDLL_DataForDLL_double[SendDataToDLL_i];
SendDataToDLL_i++; InputData.AccountStopLevel = SendDataToDLL_DataForDLL_double[SendDataToDLL_i].AccountStopLevel = SendDataToDLL_DataForDLL_double[SendDataToDLL_i];
SendDataToDLL_i++; InputData.AccountBalance = SendDataToDLL_DataForDLL_double[SendDataToDLL_i].AccountBalance = SendDataToDLL_DataForDLL_double[SendDataToDLL_i];
SendDataToDLL_i++; InputData.AccountCredit = SendDataToDLL_DataForDLL_double[SendDataToDLL_i].AccountCredit = SendDataToDLL_DataForDLL_double[SendDataToDLL_i];
...
文字列ssss。
sssss = GetCurrentDir().c_str();
sssss += "↵InputData.txt";
std::ofstream out2 (sssss.c_str())です。
// int 型の配列をテキストファイルに出力する - すべて問題なし
...
for (SendDataToDLL_i = 0; SendDataToDLL_i < 40; SendDataToDLL_i++)
{out2 << FloatToStr(SendDataToDLL_DataForDLL_double[SendDataToDLL_i]).c_str() << '\n';
}
...}

//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+

テキストファイルを見ると、int配列には正しいデータがあるのに、それに続くdouble配列には、ゼロや、原理的にありえないような巨大な数字など、無意味なものがたくさん並んでいます。

例えばこれらのファイル(dllとex4)を全てインスタに放り込めば、全て正常に動作し、全てのデータが正しく表示されます。
 
Stells:

こんにちは。

例えばストキャスティクスのクロスを修正するのに最適な方法をアドバイスしていただけませんか?

は、信号線と主線の値を比較したり、第1と第3のバーで第1と第2?


隣接する2つについて。
 
あと、alpariでMarketInfo(Symbol(), MODE_STOPLEVEL)が0を返すのはなぜですか?