
MT4 MT4 実行時エラー
4106
- 定数名
ERR_UNKNOWN_SYMBOL- メッセージ
unknown symbol- 意味
- 通貨ペア(シンボル)名が見つからない
MT4エラー4106とは
指定した通貨ペア名がその口座に存在しないときのエラーです。ブローカーによって「USDJPY.m」「USDJPYmicro」のように接尾辞が付くため、EAに通貨ペア名を直接書いていると起こりやすくなります。
ログの表示例
MarketInfo error 4106
「エキスパート」タブまたは「操作履歴」タブに表示されます。数値や表記の細部は、ビルド・ブローカー・EAの作りによって異なります。
MT4エラー4106の主な原因
- 通貨ペア名の接尾辞(.m、-cd、micro など)が口座の表記と違う
- 気配値表示に表示されていない通貨ペアを参照した
- 大文字・小文字やスペルの間違い
MT4エラー4106の対処法
- チャートの通貨ペアを使うなら Symbol() を使い、名前を直接書かない
- 別の通貨ペアを参照するなら、接尾辞をパラメータで設定できるようにする
- SymbolSelect(通貨ペア, true) で気配値表示に追加してから使う
コード例(MQL4)
// 口座ごとに違う通貨ペア名の接尾辞をパラメータで指定する(MQL4)
input string InpSuffix = ""; // 例:".m"、"micro"
double OtherAsk(string base) // base 例:"EURUSD"
{
string sym = base + InpSuffix;
if(!SymbolSelect(sym, true)) // 気配値表示に追加(見つからなければ false)
{
Print(sym, " が見つかりません。接尾辞の設定を確認してください(error ", GetLastError(), ")");
return 0;
}
return MarketInfo(sym, MODE_ASK);
}MetaEditor(MT4)でコンパイルできることを確認済みです。自分のEAに組み込むときは、変数名や設定値を合わせてください。












