クローズドオーダーの利益計算 "HELP" - ページ 2 123456789 新しいコメント 削除済み 2016.12.11 14:41 #11 Renat Akhtyamov:いえ、すでに書かれているようなことではありません。 どのクローズド・オーダーの利益計算に興味があるか、言葉で教えてください。- ひごとに- 赤字- ラストオーダー なのか、それとも別の何か? シリーズを説明する"とりあえず "最後のクローズドオーダーの連発 Renat Akhtyamov 2016.12.11 14:48 #12 Natashe4ka:最後のクローズドオーダーの "とりあえず "シリーズつまり、直近で決済された一連の注文に関する情報が必要なのですが、私の理解が正しいでしょうか?このアプローチを実装するには、まず、成功したクロージングごとにオーダーチケットの 配列を埋めて、必要なフォームでクローズしたオーダーの情報を引き出す必要があります自分でできる? Vitaly Muzichenko 2016.12.11 14:52 #13 トライComment( LastProfitCL(-1, 0) );//+----------------------------------------------------------------------------+//| Возвращает суммарный профит в валюте депозита серии закрытых ордеров |//+----------------------------------------------------------------------------+double LastProfitCL(int op=-1, datetime t=0){ //"op" позиция (-1 любая позиция) double LastProfit=0; for(int i=OrdersHistoryTotal()-1;i>=0;i--) { if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)) { if((op<0||OrderType()==op) && OrderSymbol()==Symbol() && OrderMagicNumber()==magic){ if(t<=OrderCloseTime()) { t=OrderCloseTime(); LastProfit+=OrderProfit()+OrderCommission()+OrderSwap(); }}}} return(LastProfit);} Profit calculation of closed コーディングの方法は? MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 Renat Akhtyamov 2016.12.11 14:53 #14 Vitaly Muzichenko:トライComment( LastProfitCL(-1, 0) );//+----------------------------------------------------------------------------+//| Возвращает суммарный профит в валюте депозита серии закрытых ордеров |//+----------------------------------------------------------------------------+double LastProfitCL(int op=-1, datetime t=0){ //"op" позиция (-1 любая позиция) double LastProfit=0; for(int i=OrdersHistoryTotal()-1;i>=0;i--) { if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)) { if((op<0||OrderType()==op) && OrderSymbol()==Symbol() && OrderMagicNumber()==Magic){ if(t<=OrderCloseTime()) { t=OrderCloseTime(); LastProfit+=OrderProfit()+OrderCommission()+OrderSwap(); } } } } return(LastProfit);}同時に閉じない場合はどうするのですか?ちょっと違うか。そして、決算書を提出するときに、それを覚えていれば、大丈夫です。が、この行は... t=OrderCloseTime();は必要ありません。シリーズ全体の合計を引っ張ってきますしかし、マダムは、最初の投稿で理解したように、より詳細な情報を求めています。 Vitaly Muzichenko 2016.12.11 14:54 #15 Renat Akhtyamov: 同時に閉じない場合はどうするのですか? 機能が閉じれば、すべてがうまくいく 削除済み 2016.12.11 14:58 #16 Renat Akhtyamov:つまり、私が正しく理解していれば、最後に閉じた一連の注文に関する情報が必要なのですね?この方法を実装するには、まず、成功したクローズ時のオーダーチケットの 配列を作成し、クローズされたオーダーの情報を引き出す必要があります自分でできる?例を挙げてアドバイスしてください。すなわち if (cnt>0) Ticket=OrderTicket()-1;そして、比較する ? Renat Akhtyamov 2016.12.11 15:00 #17 Natashe4ka: 例を挙げて ほしい。すなわち if (cnt>0) Ticket=OrderTicket()-1;そして、比較する ?問題ありません。あとは、そのシリーズのクローズドオーダーの情報がどのように見えるか?振込なのか、金額は+と-で分けるべきなのか? Alekseu Fedotov 2016.12.11 15:02 #18 のインジケーターがあります。アイプロフィット今日、週、月、年の現在の利益を 出力します。 Vitaly Muzichenko 2016.12.11 15:14 #19 Natashe4ka:より良い例としては以下はその一例です。int ClosePosition(int type=-1,int mg=-1) { GlobalVariableSet(GetGlobalVariableName("LastProfit"), TimeCurrent()); // запомним время закрытия // здесь код закрытия всех и сразу, нужен цикл, чтоб не выходил с функции до полного закрытия всех} 続きはこちら//+----------------------------------------------------------------------------+//| Возвращает суммарный профит в валюте депозита серии закрытых позиций |//+----------------------------------------------------------------------------+double LastProfitCL(int op=-1, datetime t=0){ //"op" позиция (-1 любая позиция) double LastProfit=0; for(int i=OrdersHistoryTotal()-1;i>=0;i--) { if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)) { if((op<0||OrderType()==op) && OrderSymbol()==Symbol() && OrderMagicNumber()==Magic){ if(t<=OrderCloseTime()) { t=OrderCloseTime(); LastProfit+=OrderProfit()+OrderCommission()+OrderSwap(); }}}} return(LastProfit);}//===============================================================================================//----------------------- Создает и возвращает имя глобальной переменной -----------------------+//===============================================================================================string GetGlobalVariableName(string name="", string symb="0") { if(symb=="0") { symb=Symbol();} if(!MQLInfoInteger(MQL_TESTER)) { return(prefix+symb+"_"+(string)AccountInfoInteger(ACCOUNT_LOGIN)+"_"+MQLInfoString(MQL_PROGRAM_NAME)+"_"+name); } else { return(prefix+symb+"_"+(string)AccountInfoInteger(ACCOUNT_LOGIN)+"_"+MQLInfoString(MQL_PROGRAM_NAME)+"_tester"+"_"+name); }} 端末を再起動しても表示されるvoid OnTick() { Comment( LastProfitCL(-1, (datetime)GlobalVariableGet(GetGlobalVariableName("LastProfit"))) ); } Profit calculation of closed MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 初心者の方からの質問 MQL4 MT4 MetaTrader Vitaly Muzichenko 2016.12.11 15:17 #20 Alekseu Fedotov:のインジケーターがあります。アイプロフィット今日、週、月、 年の現在の利益を 出力します。 10年分の情報がないのは不向きだ。 123456789 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
いえ、すでに書かれているようなことではありません。
どのクローズド・オーダーの利益計算に興味があるか、言葉で教えてください。
- ひごとに
- 赤字
- ラストオーダー
なのか、それとも別の何か?
シリーズを説明する
"とりあえず "最後のクローズドオーダーの連発
最後のクローズドオーダーの "とりあえず "シリーズ
つまり、直近で決済された一連の注文に関する情報が必要なのですが、私の理解が正しいでしょうか?
このアプローチを実装するには、まず、成功したクロージングごとにオーダーチケットの 配列を埋めて、必要なフォームでクローズしたオーダーの情報を引き出す必要があります
自分でできる?
トライ
return(LastProfit);Comment( LastProfitCL(-1, 0) );
//+----------------------------------------------------------------------------+
//| Возвращает суммарный профит в валюте депозита серии закрытых ордеров |
//+----------------------------------------------------------------------------+
double LastProfitCL(int op=-1, datetime t=0){ //"op" позиция (-1 любая позиция)
double LastProfit=0;
for(int i=OrdersHistoryTotal()-1;i>=0;i--) {
if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)) {
if((op<0||OrderType()==op) && OrderSymbol()==Symbol() && OrderMagicNumber()==magic){
if(t<=OrderCloseTime()) {
t=OrderCloseTime();
LastProfit+=OrderProfit()+OrderCommission()+OrderSwap();
}}}}
}
トライ
Comment( LastProfitCL(-1, 0) );
//+----------------------------------------------------------------------------+
//| Возвращает суммарный профит в валюте депозита серии закрытых ордеров |
//+----------------------------------------------------------------------------+
double LastProfitCL(int op=-1, datetime t=0){ //"op" позиция (-1 любая позиция)
double LastProfit=0;
for(int i=OrdersHistoryTotal()-1;i>=0;i--) {
if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)) {
if((op<0||OrderType()==op) && OrderSymbol()==Symbol() && OrderMagicNumber()==Magic){
if(t<=OrderCloseTime()) {
t=OrderCloseTime();
LastProfit+=OrderProfit()+OrderCommission()+OrderSwap();
}
}
}
}
return(LastProfit);
}
同時に閉じない場合はどうするのですか?
ちょっと違うか。
そして、決算書を提出するときに、それを覚えていれば、大丈夫です。
が、この行は...
は必要ありません。
シリーズ全体の合計を引っ張ってきます
しかし、マダムは、最初の投稿で理解したように、より詳細な情報を求めています。
同時に閉じない場合はどうするのですか?
つまり、私が正しく理解していれば、最後に閉じた一連の注文に関する情報が必要なのですね?
この方法を実装するには、まず、成功したクローズ時のオーダーチケットの 配列を作成し、クローズされたオーダーの情報を引き出す必要があります
自分でできる?
例を挙げてアドバイスしてください。
すなわち
そして、比較する ?
例を挙げて ほしい。
すなわち
そして、比較する ?
問題ありません。
あとは、そのシリーズのクローズドオーダーの情報がどのように見えるか?
振込なのか、金額は+と-で分けるべきなのか?
のインジケーターがあります。
アイプロフィット
今日、週、月、年の現在の利益を 出力します。
より良い例としては
以下はその一例です。
GlobalVariableSet(GetGlobalVariableName("LastProfit"), TimeCurrent()); // запомним время закрытия
// здесь код закрытия всех и сразу, нужен цикл, чтоб не выходил с функции до полного закрытия всех
}
続きはこちら
//| Возвращает суммарный профит в валюте депозита серии закрытых позиций |
//+----------------------------------------------------------------------------+
double LastProfitCL(int op=-1, datetime t=0){ //"op" позиция (-1 любая позиция)
double LastProfit=0;
for(int i=OrdersHistoryTotal()-1;i>=0;i--) {
if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)) {
if((op<0||OrderType()==op) && OrderSymbol()==Symbol() && OrderMagicNumber()==Magic){
if(t<=OrderCloseTime()) {
t=OrderCloseTime();
LastProfit+=OrderProfit()+OrderCommission()+OrderSwap();
}}}}
return(LastProfit);
}
//===============================================================================================
//----------------------- Создает и возвращает имя глобальной переменной -----------------------+
//===============================================================================================
string GetGlobalVariableName(string name="", string symb="0") {
if(symb=="0") { symb=Symbol();}
if(!MQLInfoInteger(MQL_TESTER)) {
return(prefix+symb+"_"+(string)AccountInfoInteger(ACCOUNT_LOGIN)+"_"+MQLInfoString(MQL_PROGRAM_NAME)+"_"+name);
} else {
return(prefix+symb+"_"+(string)AccountInfoInteger(ACCOUNT_LOGIN)+"_"+MQLInfoString(MQL_PROGRAM_NAME)+"_tester"+"_"+name);
}}
端末を再起動しても表示される
{
Comment( LastProfitCL(-1, (datetime)GlobalVariableGet(GetGlobalVariableName("LastProfit"))) );
}
のインジケーターがあります。
アイプロフィット
今日、週、月、 年の現在の利益を 出力します。