初心者の方からの質問 MQL5 MT5 MetaTrader 5 - ページ 664 1...657658659660661662663664665666667668669670671...1503 新しいコメント Aleksey Vyazmikin 2016.11.04 16:50 #6631 Alexey Kozitsyn: はい、入力パラメータを変更することはできません。正直なところ、なぜこの値を3/5桁の相場に従って変更する必要があるのか理解できません。この値は、入力パラメーターで設定します。わざわざ100(3/5桁の場合)と書くのはダメなんですか?実際、私は5桁で最適化し、より多くの履歴を残しますが、4桁で取引し、ポイントも含めて設定を使い分けています。設定を混乱させたくない--そんな思いから、このような解決策をとりました。 Vitaly Muzichenko 2016.11.04 17:03 #6632 -Aleks-:実際、私は5桁で最適化し、より多くの履歴を残しますが、4桁で取引し、ポイントも含めて設定を使い分けています。設定を混乱させたくない--そんな思いから、このような解決策をとりました。このように動作するはずです。int Sign = 1;int OnInit() {// Округлим огрызки - 3 и 5 знак Sign=(SymbolInfoInteger(_Symbol,SYMBOL_DIGITS)==3 || SymbolInfoInteger(_Symbol,SYMBOL_DIGITS)==5)?10:1;// Приведем к терминальному количеству знаков TakeProfit*=Sign; StopLoss*=Sign; TrailingShift*=Sign; TrailingStep*=Sign; Slippage*=Sign;} Aleksey Vyazmikin 2016.11.04 17:07 #6633 Vitaly Muzichenko:これは動作するはずですint Sign = 1;int OnInit() {// Округлим огрызки - 3 и 5 знак Sign=(SymbolInfoInteger(_Symbol,SYMBOL_DIGITS)==3 || SymbolInfoInteger(_Symbol,SYMBOL_DIGITS)==5)?10:1;// Приведем к терминальному количеству знаков TakeProfit*=Sign; StopLoss*=Sign; TrailingShift*=Sign; TrailingStep*=Sign; Slippage*=Sign;} ありがとうございます。EAを立ち上げられたら早速試してみようと思います...。 Aleksey Vyazmikin 2016.11.04 17:09 #6634 また、このようなエラーが発生するのですが、どうすれば修正できますか?'MODE_MAIN' - 列挙体識別子は既に定義されています initmql4__1.mqh 223 24 ENUM_STO_PRICE StoFieldMigrate(int field) { switch(field) { case 0: return(STO_LOWHIGH); case 1: return(STO_CLOSECLOSE); default: return(STO_LOWHIGH); } }//+------------------------------------------------------------------+ enum ALLIGATOR_MODE { MODE_GATORJAW=1, MODE_GATORTEETH, MODE_GATORLIPS }; enum ADX_MODE { MODE_MAIN, MODE_PLUSDI, MODE_MINUSDI }; enum UP_LOW_MODE { MODE_BASE, MODE_UPPER, MODE_LOWER }; enum ICHIMOKU_MODE { MODE_TENKANSEN=1, MODE_KIJUNSEN, MODE_SENKOUSPANA, MODE_SENKOUSPANB, MODE_CHINKOUSPAN }; enum MAIN_SIGNAL_MODE{ MODE_MAIN, MODE_SIGNAL };//+------------------------------------------------------------------+//| |//+------------------------------------------------------------------+ double CopyBufferMQL4(int handle,int index,int shift) { double buf[]; switch(index) { case 0: if(CopyBuffer(handle,0,shift,1,buf)>0) return(buf[0]); break; case 1: if(CopyBuffer(handle,1,shift,1,buf)>0) return(buf[0]); break; case 2: if(CopyBuffer(handle,2,shift,1,buf)>0) return(buf[0]); break; case 3: if(CopyBuffer(handle,3,shift,1,buf)>0) return(buf[0]); break; case 4: if(CopyBuffer(handle,4,shift,1,buf)>0) return(buf[0]); break; default: break; } return(EMPTY_VALUE); }//+------------------------------------------------------------------+ Questions from Beginners MQL5 Indicators: Deviation Rate BIAS My EA do not fxsaber 2016.11.04 17:20 #6635 -Aleks-:このような状況で、私はエラーが発生します - エラーが発生する理由を理解するのに役立ちます - MQL5では、ユーザーが入力した変数の値を変更することはできません?無理だ!MQL4_to_MQL5.mqhを使うことにしたのなら、それはしないことを強くお勧めします。ライブラリの説明の中にある、例のために書かれたものだからです。つまり、まったく普遍的ではないのです。特に、MarketInfoの非常に限定されたバージョン(例題を動作させるためだけのもの)があります。しかし、良い解決策はある。ですから、このmqhそのものを使うのではなく、そこから有用なものだけを取り出した方がいいのです。 fxsaber 2016.11.04 17:23 #6636 -Aleks-:また、このようなエラーが発生するのですが、どうすれば修正できますか?'MODE_MAIN' - 列挙体識別子は既に定義されています initmql4__1.mqh 223 24 ENUM_STO_PRICE StoFieldMigrate(int field) { switch(field) { case 0: return(STO_LOWHIGH); case 1: return(STO_CLOSECLOSE); default: return(STO_LOWHIGH); } }//+------------------------------------------------------------------+ enum ALLIGATOR_MODE { MODE_GATORJAW=1, MODE_GATORTEETH, MODE_GATORLIPS }; enum ADX_MODE { MODE_MAIN, MODE_PLUSDI, MODE_MINUSDI }; enum UP_LOW_MODE { MODE_BASE, MODE_UPPER, MODE_LOWER }; enum ICHIMOKU_MODE { MODE_TENKANSEN=1, MODE_KIJUNSEN, MODE_SENKOUSPANA, MODE_SENKOUSPANB, MODE_CHINKOUSPAN }; enum MAIN_SIGNAL_MODE{ MODE_MAIN, MODE_SIGNAL };//+------------------------------------------------------------------+//| |//+------------------------------------------------------------------+ double CopyBufferMQL4(int handle,int index,int shift) { double buf[]; switch(index) { case 0: if(CopyBuffer(handle,0,shift,1,buf)>0) return(buf[0]); break; case 1: if(CopyBuffer(handle,1,shift,1,buf)>0) return(buf[0]); break; case 2: if(CopyBuffer(handle,2,shift,1,buf)>0) return(buf[0]); break; case 3: if(CopyBuffer(handle,3,shift,1,buf)>0) return(buf[0]); break; case 4: if(CopyBuffer(handle,4,shift,1,buf)>0) return(buf[0]); break; default: break; } return(EMPTY_VALUE); }//+------------------------------------------------------------------+ リネームする。全ての列挙者のフィールドは異なるものでなければならない。そして、enum ADX_MODE とenum MAIN_SIGNAL_MODE には同じフィールドがありますね。 Aleksey Vyazmikin 2016.11.04 17:40 #6637 fxsaber: リネームする。ALL列挙のフィールドは、異なるものである必要があります。そして、enum ADX_MODE とenum MAIN_SIGNAL_MODE には同じフィールドがありますね。とりあえずコメントアウトしておきました...。致命的とは思わないが...。しかし、取引関数と その他の関数の翻訳の2つのライブラリを使用してEAを4から5へコンパイルしました。5のテスターにはまだうんざりしています。可視化で指標を追加できる場所や、ログをフィルタリングする方法が見つかりません...。オープンオーダーはまだ見れないのか、えらいこっちゃ。 Aleksey Vyazmikin 2016.11.04 17:45 #6638 どう解釈するか。2016.11.04 20:42:25.224 2016.02.11 14:04:30 保留設定時 不測のエラー - 4756 2016.11.04 20:42:25.224 2016.02.11 14:04:30 Magic=49266773 cPoza::setOrder は注文を設定する要求を送信しました。タイプ:BuyStop lot=1.0 opPrice=68180.0 tp=68200.0 sl=67260.0 2016.11.04 20:42:25.224 2016.02.11 14:04:30 failed buy stop 1.00 RTS-12.16 at 68180 sl: 67260 tp: 68200 [Invalid expiration] 無効期限切れ。 2016.11.04 20:42:25.224 2016.02.11 14:04:30 保留設定時 不測のエラー - 4756 Questions from Beginners MQL5 Indicator won't fire alerts Question on Hedging fxsaber 2016.11.04 17:48 #6639 -Aleks-:どう解釈するか。2016.11.04 20:42:25.224 2016.02.11 14:04:30 保留設定時 不測のエラー - 4756 2016.11.04 20:42:25.224 2016.02.11 14:04:30 Magic=49266773 cPoza::setOrder は注文を設定する要求を送信しました。タイプ:BuyStop lot=1.0 opPrice=68180.0 tp=68200.0 sl=67260.0 2016.11.04 20:42:25.224 2016.02.11 14:04:30 failed buy stop 1.00 RTS-12.16 at 68180 sl: 67260 tp: 68200 [Invalid expiration] 無効期限切れ。 2016.11.04 20:42:25.224 2016.02.11 14:04:30 保留設定時 不測のエラー - 4756 有効期限の設定に問題がある。 fxsaber 2016.11.04 17:55 #6640 -Aleks-:今のところ、5つのテスターにうんざりしています。指標を可視化に追加できる場所とログをフィルターする方法が見つかりません。オープンオーダーを見る方法はまだないのか、えー。 テスターの履歴を見るために、2006年のMT4コンバートスクリプトを使っています。MT4と同じようにすべてを便利に表示してくれる。 1...657658659660661662663664665666667668669670671...1503 新しいコメント 理由: キャンセル 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
はい、入力パラメータを変更することはできません。正直なところ、なぜこの値を3/5桁の相場に従って変更する必要があるのか理解できません。この値は、入力パラメーターで設定します。わざわざ100(3/5桁の場合)と書くのはダメなんですか?
実際、私は5桁で最適化し、より多くの履歴を残しますが、4桁で取引し、ポイントも含めて設定を使い分けています。設定を混乱させたくない--そんな思いから、このような解決策をとりました。
実際、私は5桁で最適化し、より多くの履歴を残しますが、4桁で取引し、ポイントも含めて設定を使い分けています。設定を混乱させたくない--そんな思いから、このような解決策をとりました。
このように動作するはずです。
int OnInit() {
// Округлим огрызки - 3 и 5 знак
Sign=(SymbolInfoInteger(_Symbol,SYMBOL_DIGITS)==3 || SymbolInfoInteger(_Symbol,SYMBOL_DIGITS)==5)?10:1;
// Приведем к терминальному количеству знаков
TakeProfit*=Sign;
StopLoss*=Sign;
TrailingShift*=Sign;
TrailingStep*=Sign;
Slippage*=Sign;
}
これは動作するはずです
int OnInit() {
// Округлим огрызки - 3 и 5 знак
Sign=(SymbolInfoInteger(_Symbol,SYMBOL_DIGITS)==3 || SymbolInfoInteger(_Symbol,SYMBOL_DIGITS)==5)?10:1;
// Приведем к терминальному количеству знаков
TakeProfit*=Sign;
StopLoss*=Sign;
TrailingShift*=Sign;
TrailingStep*=Sign;
Slippage*=Sign;
}
また、このようなエラーが発生するのですが、どうすれば修正できますか?
'MODE_MAIN' - 列挙体識別子は既に定義されています initmql4__1.mqh 223 24
ENUM_STO_PRICE StoFieldMigrate(int field)
{
switch(field)
{
case 0: return(STO_LOWHIGH);
case 1: return(STO_CLOSECLOSE);
default: return(STO_LOWHIGH);
}
}
//+------------------------------------------------------------------+
enum ALLIGATOR_MODE { MODE_GATORJAW=1, MODE_GATORTEETH, MODE_GATORLIPS };
enum ADX_MODE { MODE_MAIN, MODE_PLUSDI, MODE_MINUSDI };
enum UP_LOW_MODE { MODE_BASE, MODE_UPPER, MODE_LOWER };
enum ICHIMOKU_MODE { MODE_TENKANSEN=1, MODE_KIJUNSEN, MODE_SENKOUSPANA, MODE_SENKOUSPANB, MODE_CHINKOUSPAN };
enum MAIN_SIGNAL_MODE{ MODE_MAIN, MODE_SIGNAL };
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
double CopyBufferMQL4(int handle,int index,int shift)
{
double buf[];
switch(index)
{
case 0: if(CopyBuffer(handle,0,shift,1,buf)>0)
return(buf[0]); break;
case 1: if(CopyBuffer(handle,1,shift,1,buf)>0)
return(buf[0]); break;
case 2: if(CopyBuffer(handle,2,shift,1,buf)>0)
return(buf[0]); break;
case 3: if(CopyBuffer(handle,3,shift,1,buf)>0)
return(buf[0]); break;
case 4: if(CopyBuffer(handle,4,shift,1,buf)>0)
return(buf[0]); break;
default: break;
}
return(EMPTY_VALUE);
}
//+------------------------------------------------------------------+
このような状況で、私はエラーが発生します - エラーが発生する理由を理解するのに役立ちます - MQL5では、ユーザーが入力した変数の値を変更することはできません?
無理だ!
MQL4_to_MQL5.mqhを使うことにしたのなら、それはしないことを強くお勧めします。ライブラリの説明の中にある、例のために書かれたものだからです。つまり、まったく普遍的ではないのです。特に、MarketInfoの非常に限定されたバージョン(例題を動作させるためだけのもの)があります。しかし、良い解決策はある。ですから、このmqhそのものを使うのではなく、そこから有用なものだけを取り出した方がいいのです。
また、このようなエラーが発生するのですが、どうすれば修正できますか?
'MODE_MAIN' - 列挙体識別子は既に定義されています initmql4__1.mqh 223 24
ENUM_STO_PRICE StoFieldMigrate(int field)
{
switch(field)
{
case 0: return(STO_LOWHIGH);
case 1: return(STO_CLOSECLOSE);
default: return(STO_LOWHIGH);
}
}
//+------------------------------------------------------------------+
enum ALLIGATOR_MODE { MODE_GATORJAW=1, MODE_GATORTEETH, MODE_GATORLIPS };
enum ADX_MODE { MODE_MAIN, MODE_PLUSDI, MODE_MINUSDI };
enum UP_LOW_MODE { MODE_BASE, MODE_UPPER, MODE_LOWER };
enum ICHIMOKU_MODE { MODE_TENKANSEN=1, MODE_KIJUNSEN, MODE_SENKOUSPANA, MODE_SENKOUSPANB, MODE_CHINKOUSPAN };
enum MAIN_SIGNAL_MODE{ MODE_MAIN, MODE_SIGNAL };
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
double CopyBufferMQL4(int handle,int index,int shift)
{
double buf[];
switch(index)
{
case 0: if(CopyBuffer(handle,0,shift,1,buf)>0)
return(buf[0]); break;
case 1: if(CopyBuffer(handle,1,shift,1,buf)>0)
return(buf[0]); break;
case 2: if(CopyBuffer(handle,2,shift,1,buf)>0)
return(buf[0]); break;
case 3: if(CopyBuffer(handle,3,shift,1,buf)>0)
return(buf[0]); break;
case 4: if(CopyBuffer(handle,4,shift,1,buf)>0)
return(buf[0]); break;
default: break;
}
return(EMPTY_VALUE);
}
//+------------------------------------------------------------------+
リネームする。ALL列挙のフィールドは、異なるものである必要があります。そして、enum ADX_MODE とenum MAIN_SIGNAL_MODE には同じフィールドがありますね。
とりあえずコメントアウトしておきました...。致命的とは思わないが...。
しかし、取引関数と その他の関数の翻訳の2つのライブラリを使用してEAを4から5へコンパイルしました。
5のテスターにはまだうんざりしています。可視化で指標を追加できる場所や、ログをフィルタリングする方法が見つかりません...。
オープンオーダーはまだ見れないのか、えらいこっちゃ。
どう解釈するか。
2016.11.04 20:42:25.224 2016.02.11 14:04:30 保留設定時 不測のエラー - 4756
2016.11.04 20:42:25.224 2016.02.11 14:04:30 Magic=49266773 cPoza::setOrder は注文を設定する要求を送信しました。タイプ:BuyStop lot=1.0 opPrice=68180.0 tp=68200.0 sl=67260.0
2016.11.04 20:42:25.224 2016.02.11 14:04:30 failed buy stop 1.00 RTS-12.16 at 68180 sl: 67260 tp: 68200 [Invalid expiration] 無効期限切れ。
2016.11.04 20:42:25.224 2016.02.11 14:04:30 保留設定時 不測のエラー - 4756
どう解釈するか。
2016.11.04 20:42:25.224 2016.02.11 14:04:30 保留設定時 不測のエラー - 4756
2016.11.04 20:42:25.224 2016.02.11 14:04:30 Magic=49266773 cPoza::setOrder は注文を設定する要求を送信しました。タイプ:BuyStop lot=1.0 opPrice=68180.0 tp=68200.0 sl=67260.0
2016.11.04 20:42:25.224 2016.02.11 14:04:30 failed buy stop 1.00 RTS-12.16 at 68180 sl: 67260 tp: 68200 [Invalid expiration] 無効期限切れ。
2016.11.04 20:42:25.224 2016.02.11 14:04:30 保留設定時 不測のエラー - 4756
今のところ、5つのテスターにうんざりしています。指標を可視化に追加できる場所とログをフィルターする方法が見つかりません。
オープンオーダーを見る方法はまだないのか、えー。