MQL4 リファレンス

標準定数・エラーコード

グループ詳細
チャート定数価格チャート関連の定数
オブジェクト定数チャート内に作成して表示するグラフィカルオブジェクト用の定数
インジケータ定数標準・カスタムインジケータを操作する為の定数
エラーコード・ワーニングコードコンパイラメッセージとトレードサーバーの応答用の定数
環境ステータスクライアントターミナル・アカウント情報・MQL4プログラムプロパティ用の定数
トレード定数取引オーダーの過程で指定する情報の定数。
定義済み定数MQL4言語の定義済み定数
定義済みデータ構造体MQL4言語の定義済み構造体
入出力定数ファイル関数とメッセージボックス関数用の定数

定義済み変数

関数詳細
_Digits価格の小数点以下の桁数
_Point現在の通貨ペアでの、価格の小数点値
_LastError直近のエラーコード
_Period現在チャートの時間軸
_RandomSeed整数の疑似乱数
_StopFlagプログラム停止フラグ
_Symbol現在チャートの通貨ペア名
_UninitReasonUnInit理由コード
Ask現在の通貨ペアの買値(最新の売り手の価格)
Bars現在チャートのバー数
Bid現在の通貨ペアの売値(最新の買い手の価格)
Close[]現在チャートの各バーの終値配列
Digits現在の通貨ペアでの、価格の小数点以下の桁数
High[]現在チャートの各バーの高値配列
Low[]現在チャートの各バーの安値配列
Open[]現在チャートの各バーの始値配列
Point現在の通貨ペアでの、価格の小数点値
Time[]現在チャートの各バーの時間配列
Volume[]現在チャートの各バーの出来高配列

共通関数

関数詳細
Alert別ウィンドウにメッセージを表示します
CheckPointerオブジェクトポインタのタイプを返します
Commentチャートの左上隅にコメントを表示します
CryptEncode指定した方法で配列データをエンコードします
CryptDecode配列データをデコードします
DebugBreakデバッグ中のブレークポイント
ExpertRemoveEAを停止し、チャートから削除します
GetPointerオブジェクトポインタを取得します
GetTickCountシステムが起動してからの経過時間をmsec単位で返します
GetMicrosecondCountMQL4プログラム開始からの経過時間をμsec単位で返します
MessageBoxメッセージボックスを表示します
PeriodSeconds時間軸の値を秒数で返します
PlaySoundサウンドファイルを再生します
Printログにメッセージを表示します
PrintFormatプリセットフォーマットでログにメッセージを表示します
ResetLastError_LastError変数の値にゼロを設定します
ResourceCreateデータセットのリソース画像を作成します
ResourceFree動的に作成されたリソースを削除(メモリ解放)します。
ResourceReadImageex4ファイルに保存された又はResourceCreate()関数によって作成されたリソース画像データを読み込みます。
ResourceSave指定したファイルにリソースを保存します
SendFTP設定画面の「FTPタブ」で指定したアドレスにファイルを送信します
SendMail設定画面の「E-メール」タブで指定したアドレスにメール送信します
SendNotification設定画面の「通知機能」タブで指定したモバイル端末にプッシュ通知を送信します
Sleep指定されたインターバル時間EA(またはスクリプト)の処理実行を中断します
TerminalCloseクライアントターミナルを閉じます
TesterStatistics
テスト結果に基づいて算出された統計データを取得します
TranslateKey仮想キーコードをUnicodeに変換します
WebRequest指定したサーバーにHTTPリクエストを送信します
ZeroMemory引数で渡した値をリセットします。
(定数・クラス・構造体は不可)

配列関数

関数詳細
ArrayBsearch最初の次元配列内を検索し、最初に見つかった要素のインデックスを返します。
ArrayCopy別の配列にコピーします
ArrayCompareシンプルな型の2つの配列を比較します。
複雑なオブジェクト・構造体には使用できません。
ArrayFree全ての動的配列のバッファを解放します。
ArrayGetAsSeries配列インデックスの方向をチェックします
ArrayInitialize数値配列の全要素を指定した値で初期化します
ArrayFill指定した値で配列を埋めます
ArrayIsSeries配列が時系列であるかチェックします
ArrayIsDynamic動的配列かチェックします
ArrayMaximum最大値を持つ要素を検索します
ArrayMinimum最小値を持つ要素を検索します
ArrayRange指定した次元配列の要素数を返します
ArrayResize最初の次元配列のサイズを変更します
ArraySetAsSeries配列のインデックス方向を設定します
ArraySize配列の要素数を返します
ArraySort最初の次元で数値配列をソートします
ArrayCopyRates2次元配列にレートデータをコピーします。
チャートレート情報配列(バー数分)のデータがコピーされます。
ArrayCopySeries時系列配列を別配列にコピーします。 コピーされた要素数を返します。
ArrayDimension多次元配列の次元数を返します

変換関数

関数詳細
CharToString文字(ANSI)を文字列に変換
CharArrayToStringシンボルコード(ANSI)を文字列に変換
ColorToARGBcolor型をuint型のARGB表現に変換する
ColorToStringcolor型を"R,G,B"形式表現の文字列に変換する
DoubleToString浮動小数点数を指定した精度で文字列に変換
EnumToString列挙を文字列に変換
IntegerToString整数型の値を文字列に変換
ShortToStringShort型の値を文字列に変換
ShortArrayToStringshort配列を文字列に変換
TimeToString日付時刻(datetime)型データを"yyyy.mm.dd hh:mi"形式表現の文字列に変換
NormalizeDouble浮動小数点数を指定精度で丸めます
StringToCharArray文字列をUnicodeからANSIに変換し、char型配列にコピーする
StringToColor"R,G,B"形式の文字列をcolor型に変換する
StringToDouble文字列を浮動小数点数型の数値に変換
StringToInteger文字列を整数(int型)の数値に変換
StringToShortArray文字列の選択した部分をshort配列にコピーする
StringToTime日付や時刻を含む文字列を"yyyy.mm.dd hh:mi"形式の日付時刻(datetime)型に変換
StringFormatプリセットフォーマットに従って文字列を変換する
CharToStr1文字のシンボルコード(ANSI)を文字列に変換
DoubleToStr浮動小数点数を指定した精度で文字列変換します
StrToDouble数値の文字列を浮動小数点数型に変換します
StrToInteger数値の文字列を整数(int)型に変換します
StrToTime日付や時刻を含む文字列を"yyyy.mm.dd hh:mi"形式の日付時刻(datatime)型に変換
TimeToStr日付時刻(datetime)型データを"yyyy.mm.dd hh:mi"形式表現の文字列に変換

数学関数

関数詳細
MathSin指定した値のサインを返します
MathCos指定した値のコサインを返します
MathTan指定した値のタンジェントを返します
MathArcsin指定した値のアークサインをラジアンで返します
DoubleToMathArccos指定した値のアークコサインをラジアンで返します
MathArctan指定した値のアークタンジェントをラジアンで返します
MathPowべき乗結果を返します
MathExp指数を返します
MathLog自然対数を返します
MathLog1010を底をする対数を返します
MathSqrt平方根を返します
MathAbs指定した値の絶対値を返します
MathCeil指定した値の上限値を返します
MathRound整数値に丸めます
MathFloor指定した値の下限値を返します
MathMax2つの値を比較して最大値を返します
MathMin2つの値を比較して最小値を返します
MathMod余剰結果を返します
MathRand0~32767の範囲内で疑似乱数値を返します
MathSrand疑似乱数整数を生成する為のシードを設定します
MathIsValidNumber実数の正当性をチェックします

文字列関数

関数詳細
StringAdd文字列の末尾に文字列を追加します
StringBufferLen文字列バッファのサイズを返します
StringCompare文字列を比較します。
1つ目の文字列が2つ目の文字列より大きい場合は1を返します。
1つ目の文字列が2つ目の文字列と等しい場合は0を返します。
1つ目の文字列が2つ目の文字列より小さい場合は-1を返します。
StringConcatenate文字列を結合します
StringFill文字列を指定したシンボルで埋めます
StringFind文字列内を検索します
StringGetCharacter文字列内の指定位置にあるシンボルコードを返します
StringInit文字列を指定した文字で初期化します
StringLen文字列の長さを返します
StringReplace文字列内の指定した文字列を置換します
StringSetCharacter文字列内の指定した位置に文字をセットします
StringSplit文字列を指定した文字で分離します
StringSubstr文字列の指定した部分文字列を抽出します
StringToLower文字列を小文字に変換します
StringToUpper文字列を大文字に変換します
StringTrimLeft文字列の左側にある改行文字・空白・タブを切り取ります
StringTrimRight文字列の右側にある改行文字・空白・タブを切り取ります
StringGetChar文字列の指定した位置の文字コードを返します
StringSetChar文字列の指定した位置に文字を設定し、変更後の文字列を返します

時に関する関数

関数詳細
TimeCurrent最後に受信したサーバー時間(最後のクォート受信時)をdatetime型で返します
TimeLocalローカルコンピュータの時間をdatetime型で返します
TimeGMTクライアントターミナルを実行しているコンピュータのローカル時間から算出したGMT時間(サマータイムを考慮)を返します
TimeDaylightSavingsサマータイムのスイッチサインを返します
TimeGMTOffsetアカウントのサマータイムスイッチサインを考慮したGMT時間と、ローカルコンピュータの時間の差を返します。
TimeToStructdatetime型データをMqlDateTime構造体型に変換します
StructToTimeMqlDateTime構造体型データをdatetime型に変換します
DayOfWeek最後に受信したサーバー時間の曜日を数値(0:日曜日)で返します。
DayOfYear最後に受信したサーバー時間の経過日数(1年の経過日数)を返します
Year最後に受信したサーバー時間の年(年月日の'年'のみ)を返します
Month最後に受信したサーバー時間の月(年月日の'月'のみ)を返します
Day最後に受信したサーバー時間の日(年月日の'日'のみ)を返します
Hour最後に受信したサーバー時間の時(時分秒の'時'のみ)を返します
Minute最後に受信したサーバー時間の分(時分秒の'分'のみ)を返します
Seconds最後に受信したサーバー時間の秒(時分秒の'秒'のみ)を返します
TimeDayOfWeek指定した日付の曜日を数値(0:日曜日)で返します
TimeDayOfYear指定した日付の経過日数(1年の経過日数)を返します
TimeYear指定した日付の年(年月日の'年'のみ)を返します
TimeMonth指定した日付の月(年月日の'月'のみ)を返します
TimeDay指定した日付の日(年月日の'日')を返します
TimeHour指定した時間の時(時分秒の'時'のみ)を返します
TimeMinute指定した時間の分(時分秒の'分'のみ)を返します
TimeSeconds指定した時間の秒(時分秒の'秒'のみ)を返します

時系列・インジケータアクセス

関数詳細
SeriesInfoIntegerヒストリカルデータ状態についての情報を返します
RefreshRates事前に定義された変数と時系列配列のデータをリフレッシュします
CopyRates指定した通貨ペア・時間軸のヒストリカルデータをMqlRates構造体配列にコピーします
CopyTime指定した通貨ペア・時間軸のバーのオープン時間を配列にコピーします
CopyOpen指定した通貨ペア・時間軸のバーの始値を配列にコピーします
CopyHigh指定した通貨ペア・時間軸のバーの高値を配列にコピーします
CopyLow指定した通貨ペア・時間軸のバーの安値を配列にコピーします
CopyClose指定した通貨ペア・時間軸のバーの終値を配列にコピーします
CopyTickVolume指定した通貨ペア・時間軸のバーのtick出来高を配列にコピーします
Bars指定した通貨ペア・時間軸のバー数を返します(ヒストリカルデータ期間指定)
iBars指定したチャートのバー数を返します
iBarShift指定したオープン時間のバーシフト数を返します
iClose指定した通貨ペア・時間軸の終値(タイムシフト可)を返します
iHigh指定した通貨ペア・時間軸の高値(タイムシフト可)を返します
iLow指定した通貨ペア・時間軸の安値(タイムシフト可)を返します
iOpen指定した通貨ペア・時間軸の始値(タイムシフト可)を返します
iTime指定した通貨ペア・時間軸のオープン時間(タイムシフト可)を返します
iVolume指定した通貨ペア・時間軸の出来高(タイムシフト可)を返します
iHighest指定したバー数での最大値を持つバーシフト数を返します
iLowest指定したバー数での最小値を持つバーシフト数を返します

チャート操作

関数詳細
ChartApplyTemplate指定したファイルのテンプレートをチャートに適用します
ChartSaveTemplate指定した名前でチャート設定のテンプレートを保存します
ChartWindowFindインジケータが描画されるサブウインドウの数を返します
ChartTimePriceToXY時間・価格値をX・Y座標に変換
ChartXYToTimePriceX・Y座標を時間・価格値に変換
ChartOpen指定した通貨ペア・時間軸の新しいチャートを開きます
ChartFirstクライアントターミナルの最初のチャートのIDを返します
ChartNext指定したチャートIDの次のチャートIDを返します
ChartClose指定したチャートを閉じます
ChartSymbol指定したチャートの通貨ペア名を返します
ChartPeriod指定したチャートの時間軸を返します
ChartRedraw指定したチャートを強制的に再描画します
ChartSetDouble指定したチャートのプロパティ値を設定(double)
ChartSetInteger指定したチャートのプロパティ値を設定(int)
ChartSetString指定したチャートのプロパティ値を設定(string)
ChartGetDouble指定したチャートのプロパティ値を取得します(double)
ChartGetInteger指定したチャートのプロパティ値を取得します(int)
ChartGetString指定したチャートのプロパティ値を取得します(string)
ChartNavigate指定したチャートをシフトします。
ChartIDチャートIDを返します
ChartIndicatorDeleteチャートウインドウから指定したインジケータを削除します
ChartIndicatorName指定したチャートウインドウの指定したインジケータリストのインジケータ名(短縮名)を返します
ChartIndicatorsTotal指定したチャートウインドウのインジケータ数を返します
ChartWindowOnDroppedEA、スクリプトをドロップした座標のサブウインドウ番号を返します
ChartPriceOnDroppedEA、スクリプトをドロップした座標の価格を返します
ChartTimeOnDroppedEA、スクリプトをドロップした座標のオープン時間を返します
ChartXOnDroppedEA、スクリプトをドロップした座標のX軸座標を返します
ChartYOnDroppedEA、スクリプトをドロップした座標のY軸座標を返します
ChartSetSymbolPeriod指定した通貨ペア・時間軸にチャート変更します
ChartScreenShot指定したチャートのスクリーンショットをgif,bmp,png形式で保存します
Period現在チャートの時間軸を返します
Symbol現在チャートの通貨ペア名を返します
WindowBarsPerChartチャート上の表示バー量を返します
WindowExpertName実行中のEA,スクリプト,カスタムインジケータ,ライブラリの名前を返します
WindowFind指定したインジケータを含んでいるウインドウインデックスを返します
WindowFirstVisibleBarチャートウインドウに最初(最も古い)に表示されているバーインデックスを返します
WindowHandleチャートウインドウのシステムハンドルを返します
WindowIsVisibleチャートのサブウインドウの表示フラグを返します
WindowOnDroppedEA、スクリプト、カスタムインジケータをドロップしたウインドウインデックスを返します
WindowPriceOnDroppedEA、スクリプトをドロップした座標の価格を返します
WindowTimeOnDroppedEA、スクリプトをドロップした座標のオープン時間を返します
WindowXOnDroppedEA、スクリプトをドロップした座標のX軸座標を返します
WindowYOnDroppedEA、スクリプトをドロップした座標のY軸座標を返します
WindowScreenShot現在のチャートのスクリーンショットをgif形式で保存します
WindowsTotalチャート上の表示ウインドウ合計数を返します
WindowRedraw現在チャートを強制的に再描画します
WindowPriceMax現在チャートの指定したサブウインドウの垂直スケールの最大値を返します
WindowPriceMin現在チャートの指定したサブウインドウの垂直スケールの最小値を返します

アカウント情報

関数詳細
AccountInfoDouble対応するアカウントプロパティの値(double型)を返します
AccountInfoInteger対応するアカウントプロパティの値(bool,int,log型)を返します
AccountInfoString対応するアカウントプロパティの値(string型)を返します
AccountBalance現在アカウントの口座残高を返します
AccountCredit現在アカウントのクレジット値を返します
AccountCompany現在アカウントが登録された証券会社名を返します
AccountCurrency現在アカウント口座の通貨名を返します
AccountEquity現在アカウントの有効証拠金を返します
AccountFreeMargin現在アカウントの余剰証拠金
AccountFreeMarginCheck指定したポジションを現在のレートで持った場合に残る余剰証拠金を返します
AccountFreeMarginMode余剰証拠金の計算モード
AccountLeverage現在アカウントのレバレッジを返します
AccountMargin現在アカウントの証拠金を返します
AccountName現在のアカウント名を返します
AccountNumberアカウント番号を返します
AccountProfit現在アカウントの損益を返します
AccountServer接続サーバー名を返します
AccountStopoutLevel現在アカウントのストップアウトレベルを返します
AccountStopoutModeストップアウトレベルの計算モードを返します

マーケット情報

関数詳細
MarketInfo「気配値表示」ウインドウに表示されている様々な情報を返します
SymbolsTotal利用可能な(「気配値表示」に表示されている)通貨ペアの数を返します
SymbolName指定した通貨ペアの名前を返します
SymbolSelect「気配値表示」ウインドウの通貨ペアを選択・削除出来ます
SymbolInfoDouble通貨ペアの対応するプロパティ値を返します(double)
SymbolInfoInteger通貨ペアの対応するプロパティ値を返します(int)
SymbolInfoString通貨ペアの対応するプロパティ値を返します(string)
SymbolInfoTickMqlTick型の変数に指定した通貨ペアの現在の価格データを設定します
SymbolInfoSessionQuote指定したクォートセッション(指定した通貨ペア・曜日・時間範囲)での受信を許可します
SymbolInfoSessionTrade指定したトレードセッション(指定した通貨ペア・曜日・時間範囲)での受信を許可
AccountFreeMarginMode余剰証拠金の計算モード

取引関数

取引注文や取引管理を行う為の関数です。

取引関数はEAとスクリプトで使用可能です。

OrderSend(), OrderClose(), OrderCloseBy(), OrderModify(), OrderDelete()の関数は、
EAによる取引が許可されている場合にのみ呼び出す事が出来ます
(プロパティの"自動売買を許可する"にチェックが入っている時のみ)。

関数詳細
OrdersHistoryTotalターミナルにロードされたアカウント履歴にあるクローズ済の注文数を返します。
OrdersTotal注文(エントリー中と保留中)の総数を返します
OrderSelect処理する為の注文を選択します
OrderSend新規注文(エントリーオーダー)送信
OrderClose決済注文(クローズオーダー)
OrderCloseBy両建てポジションを同時に決済します
OrderModify現在選択中の注文を変更します
OrderDelete保留中の注文を削除します
OrderPrint現在選択中の注文の情報をログ出力します
OrderTicket現在選択中の注文のチケット番号を返します
OrderOpenTime現在選択中の注文の注文時間を返します
OrderOpenPrice現在選択中の注文の注文価格を返します
OrderType現在選択中の注文の注文タイプを返します
AccountName現在のアカウント名を返します
AccountNumberアカウント番号を返します
AccountProfit現在アカウントの損益を返します
OrderLots現在選択中の注文のロットを返します
OrderSymbol現在選択中の注文の通貨ペア名を返します
OrderStopLoss現在選択中の注文のストップロス価格を返します
OrderTakeProfit現在選択中の注文のリミット価格を返します
OrderCloseTime現在選択中の注文の決済時間を返します
OrderClosePrice現在選択中の注文の決済価格を返します
OrderCommission現在選択中の注文の手数料を返します
OrderExpiration選択した保留中注文の有効期限を返します
OrderSwap現在選択中の注文のスワップを返します
OrderProfit現在選択中の注文の損益を返します
OrderComment現在選択中の注文のコメントを返します
OrderMagicNumber現在選択中の注文のマジックナンバーを返します

ファイル関数

ファイルを操作する為の関数です。

セキュリティ上の理由から、ファイル操作はMQL4言語で厳格に制御されます。
ファイルサンドボックス(セキュリティモデル)の外にあるファイルは、MQL4プログラムでファイル操作する事は出来ません。

作業ファイルを配置できるディレクトリは2つあります。

 ・"ターミナルデータディレクトリ\MQL4\Files" (ターミナルメニューで「ファイル」⇒「データフォルダを開く」で開かれる場所)
 ・コンピュータにインストールされた全ターミナルの共通フォルダ。
    (通常は"C:\Users\ユーザー名\AppData\Roaming\MetaQuotes\Terminal\Common"に配置されますが、基本的にOSに依存します)

他ディレクトリのファイルは操作出来ません。

関数詳細
FileFindFirst指定したフィルタでディレクトリ内のファイルを検索
FileFindNextFileFindFirst()関数の検索を続けます
FileFindClose検索ハンドル閉じます
FileOpen指定した名前とフラグでファイルを開きます
FileDelete指定したファイルを削除します
FileFlush入力/出力ファイルバッファに残っている全データをディスクへ書き込みます
FileGetIntegerファイルプロパティ(int)を取得します
FileIsEndingファイルの終端判定
FileIsLineEndingファイルの行末判定
FileCloseファイルを閉じます
FileIsExistファイルの存在有無チェック
FileCopyファイルコピー
FileMoveファイルの移動・名前変更
FileReadArrayBIN形式ファイルの配列読込み(文字列は読み込まない)
FileReadBoolCSV形式ファイルの現在位置から読込み区切りまでの文字列を読み取り、
読み取った文字列をbool型データに変換します
FileReadDatetimeCSV形式ファイルから"YYYY.MM.DD HH:MI:SS","YYYY.MM.DD","HH:MI:SS"のいずれかの形式の文字列を読み取り、
datetime型データに変換します
FileReadDouble現在位置のファイルポインタからdouble値を読み取ります
FileReadFloat現在位置のファイルポインタからfloat値を読み取ります
FileReadInteger現在位置のファイルポインタからint,short,char値を読み取ります
FileReadLong現在位置のファイルポインタからlong値を読み取ります
FileReadNumberCSV形式ファイルの現在位置から読込み区切りまでの文字列を読み取り、
読み取った文字列をdouble型データに変換します
FileReadString現在位置のファイルポインタから文字列(string)を読み取ります
FileReadStructBIN形式ファイルを現在位置のファイルポインタから構造体データ読み取ります
FileSeek指定した位置を基準にして、ファイルポインタを指定したバイト数分移動します
FileSizeファイルサイズを返します
FileTellファイルポインタの現在位置を返します
FileWriteCSVまたはBINファイルにデータを書き込みます
FileWriteArrayBIN形式ファイルに配列データ内容を書き込みます(文字列を除く)
FileWriteDoubleBIN形式ファイルにdouble型データを(現在のファイルポインタから)書き込みます
FileWriteFloatBIN形式ファイルにfloat型データを(現在のファイルポインタから)書き込みます
FileWriteIntegerBIN形式ファイルにint型データを(現在のファイルポインタから)書き込みます
FileWriteLongBIN形式ファイルにlong型データを(現在のファイルポインタから)書き込みます
FileWriteStringCSVまたはBIN形式ファイルに文字列(string)データを(現在のファイルポインタから)書き込みます
FileWriteStructBIN形式ファイルに構造体データの値を(現在のファイルポインタから)書き込みます
FolderCreate"Files"ディレクトリ内に新しいフォルダを作成します
FolderDelete指定したディレクトリを削除します。フォルダが空で無い場合は削除出来ません
FolderClean指定したフォルダ内のファイルを全て削除します
FileOpenHistory"history"ディレクトリ(またはそのサブフォルダ)のファイルを開きます

オブジェクト関数

関数詳細
ObjectCreate指定したチャートに指定したタイプのオブジェトを生成します
ObjectNameオブジェクトリストの指定したインデックスに対応するオブジェクト名を返します
ObjectDelete指定した名前のオブジェクトを削除します
ObjectsDeleteAll指定したサブウインドウから指定したタイプのオブジェクトを全て削除します
ObjectFind指定した名前のオブジェクトを検索します
ObjectGetTimeByValue指定したオブジェクト時間での価格を返します
ObjectGetValueByTime指定したオブジェクト価格での時間を返します
ObjectMove指定したオブジェクトのアンカーポイントを変更します
ObjectsTotal指定したタイプのオブジェクト数を返します
ObjectGetDoubleオブジェクトプロパティ(double)を取得します
ObjectGetIntegerオブジェクトプロパティ(int)を取得します
ObjectGetStringオブジェクトプロパティ(string)を取得します
ObjectSetDoubleオブジェクトプロパティ(double)を設定します
ObjectSetIntegerオブジェクトプロパティ(int)を設定します
ObjectSetStringオブジェクトプロパティ(string)を設定します
TextSetFont描画メソッドで使用するフォントを設定します(デフォルトはArialフォント、サイズ20)
TextOutグラフィカルリソースの作成の為にデザインされたカスタム配列(バッファ)にテキストを転送します
TextGetSize現在のフォント設定で高さと幅を返します
ObjectDescriptionオブジェクトの説明を返します
ObjectGet指定したオブジェクトのプロパティ値を返します
ObjectGetFiboDescriptionフィボナッチオブジェクトのレベル説明を返します
ObjectGetShiftByValueオブジェクトの座標から指定した価格に対応するバーインデックスを算出します
ObjectGetValueByShiftオブジェクトの座標から指定したバーインデックスに対応する価格を算出します
ObjectSet指定したオブジェクトのプロパティ値を変更します
ObjectSetFiboDescriptionフィボナッチオブジェクトレベルの説明を設定します
ObjectSetTextオブジェクト説明を変更します
ObjectTypeオブジェクトタイプを返します

テクニカルインジケータ関数

標準インジケータ・カスタムインジケータの計算を行います。

EA(または他のMQL4プログラム)は、任意のインジケータの値を取得する事が出来ます。
取得対象のインジケータはチャート内に存在する必要はありません。
要求したインジケータがロードされ、それを呼び出したモジュールのスレッドで計算されます。

任意のインジケータは現在のチャートだけでなく、任意の通貨ペア・時間軸のデータで計算する事が出来ます。
別チャートのデータ(指定した通貨ペア・時間軸が現在チャートと異なる)を要求した場合、
対応するチャートがクライアントターミナルで開かれていない可能性がある状況では、必要なデータはサーバーから取得しなければなりません。
必要なデータが存在しない場合、エラーコード4066(ERR_HISTORY_WILL_UPDATED:要求されたヒストリーデータが更新中)が作成されます、
この時データは取得出来ていないので、再要求する必要があります(ArrayCopySeries()関数のサンプルソース参照)。

全てのインジケータ関数は少なくとも2つのパラメータ(通貨ペアと時間軸)を持っています。
通貨ペアにNULLを指定した場合は現在の通貨ペアを意味します。
時間軸に0を指定した場合は現在の時間軸を意味します。

関数詳細
iACAC(アクセラレータ)オシレータ
iADAD(累積/分散)インジケータ
iADXワイルダーADX(Average Directional Index)
iAlligatorアリゲーター
iAOAO(Awesome Oscillator)オシレーター
iATRATR(Average True Range)
iBearsPowerベアパワー
iBandsボリンジャーバンド
iBandsOnArrayボリンジャーバンド【配列格納】
iBullsPowerブルパワー
iCCICCI(Commodity Channel Index)
iCCIOnArrayCCI【配列格納】
iCustomカスタムインジケータ
iDeMarkerデマーカー
iEnvelopesエンベロープ
iEnvelopesOnArrayエンベロープ【配列格納】
iForce勢力指数(Force Index)
iFractalsフラクタル
iGatorゲーターオシレーター
iIchimoku一目均衡表
iBWMFIウィリアアムズ市場簡素化指数(Market Facilitation Index by Bill Williams)
iMomentumモメンタム
iMomentumOnArrayモメンタム【配列格納】
iMFIマネーフローインデックス
iMA移動平均
iMAOnArray移動平均配列
iOsMAMACDヒストグラム
iMACDMACD
iOBVオンバランスボリューム
iSARパラボリックSAR
iRSIRSI(相対力指数)
iRSIOnArrayRSI【配列格納】
iRVIRVI(Relative Vigor Index)
iStdDev標準偏差
iStdDevOnArray標準偏差【配列格納】
iStochasticストキャスティクス
iWPRウィリアムズ%R

検査

関数詳細
GetLastError直近のエラーコードを返します
IsStoppedMQLプログラムが動作停止するように命令された場合にtrueを返します
UninitializeReasonアンロードの理由コードを返します
TerminalInfoIntegerクライアントターミナルに対応するプロパティをint型で返します)
TerminalInfoDoubleクライアントターミナルに対応するプロパティをdouble型で返します)
TerminalInfoStringクライアントターミナルに対応するプロパティをstring型で返します)
MQLInfoIntegerMQL4プログラムに対応するプロパティをint型で返します)
MQLInfoStringMQL4プログラムに対応するプロパティをstring型で返します)
MQLSetInteger現在チャートの通貨ペア名を返します
Period現在チャートの時間軸を返します
Digits現在通貨ペアの価格の精度を返します
Point現在通貨ペアの小数点値を返します
IsConnectedサーバーとの接続チェックします
IsDemoデモ口座かチェックします(EA用)
IsDllsAlloweddll関数呼び出し許可されているかチェックします(EA用)
IsExpertEnabledEA許可(ターミナルの「自動売買」ボタン)されているかチェックします
IsLibrariesAllowedライブラリ関数呼び出し可能かチェックします(EA用)
IsOptimizationストラテジーテスターの最適化モード中かチェックします(EA用)
IsTestingテストモード中かチェックします
IsTradeAllowedEA取引許可(EA設定画面の「自動売買を許可する」チェックボックス)されていて、トレードビジーでないかチェックします
IsTradeContextBusyトレードビジー情報を返します
IsVisualModeストラテジーテスターのヴィジュアルモード中かチェックします
TerminalCompanyクライアントターミナルを提供した会社名を返します
TerminalNameクライアントターミナル名を返します
TerminalPathクライアントターミナルを起動したパスを返します