{"id":65662,"date":"2026-03-15T03:27:04","date_gmt":"2026-03-14T18:27:04","guid":{"rendered":"https:\/\/sys-tre.com\/forexguide\/?p=65662"},"modified":"2026-04-15T00:53:26","modified_gmt":"2026-04-14T15:53:26","slug":"mql5-file-operations","status":"publish","type":"post","link":"https:\/\/sys-tre.com\/forexguide\/mql5-file-operations\/","title":{"rendered":"MQL5 \u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c \u5b8c\u5168\u30ac\u30a4\u30c9\uff5cFileOpen\u30fbFileWrite\u30fbCSV\u8aad\u307f\u66f8\u304d\u30fb\u30ed\u30b0\u8a18\u9332\u306e\u5b9f\u88c5"},"content":{"rendered":"\n<p>MQL5 \u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u95a2\u6570\u3092\u5b8c\u5168\u7db2\u7f85\u3002FileOpen\u30fbFileWrite\u30fbFileRead\u306a\u3069\u3001EA\u958b\u767a\u3067\u4f7f\u3046\u3059\u3079\u3066\u306e\u30d5\u30a1\u30a4\u30eb\u95a2\u6570\u3092\u30b3\u30fc\u30c9\u4ed8\u304d\u3067\u89e3\u8aac\u3057\u307e\u3059\u3002CSV\u53d6\u5f15\u30ed\u30b0\u306e\u8a18\u9332\u3001\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306e\u8aad\u307f\u66f8\u304d\u3001EA\u9593\u901a\u4fe1\u3001\u30c7\u30fc\u30bf\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u307e\u3067\u3001\u5b9f\u8df5\u7684\u306a\u30d1\u30bf\u30fc\u30f3\u3092\u8c4a\u5bcc\u306b\u7d39\u4ecb\u3002MQL4\u3068\u306e\u9055\u3044\u3082\u4f75\u8a18\u3057\u3066\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"2400\" height=\"1260\" src=\"https:\/\/sys-tre.com\/forexguide\/wp-content\/uploads\/2026\/03\/mql_mql5-file-operations.jpg\" alt=\"MQL5 \u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u95a2\u6570 \u30ea\u30d5\u30a1\u30ec\u30f3\u30b9\u30ab\u30fc\u30c9\" class=\"wp-image-67624\" srcset=\"https:\/\/sys-tre.com\/forexguide\/wp-content\/uploads\/2026\/03\/mql_mql5-file-operations.jpg 2400w, https:\/\/sys-tre.com\/forexguide\/wp-content\/uploads\/2026\/03\/mql_mql5-file-operations-300x158.jpg 300w, https:\/\/sys-tre.com\/forexguide\/wp-content\/uploads\/2026\/03\/mql_mql5-file-operations-1024x538.jpg 1024w, https:\/\/sys-tre.com\/forexguide\/wp-content\/uploads\/2026\/03\/mql_mql5-file-operations-768x403.jpg 768w, https:\/\/sys-tre.com\/forexguide\/wp-content\/uploads\/2026\/03\/mql_mql5-file-operations-1536x806.jpg 1536w, https:\/\/sys-tre.com\/forexguide\/wp-content\/uploads\/2026\/03\/mql_mql5-file-operations-2048x1075.jpg 2048w\" sizes=\"(max-width: 2400px) 100vw, 2400px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"file-overview\">MQL5\u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u306e\u57fa\u790e\u77e5\u8b58<\/h2>\n\n\n\n<p>MQL5\u306e\u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u306f\u3001\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u4e0a\u306e\u7406\u7531\u304b\u3089\u30b5\u30f3\u30c9\u30dc\u30c3\u30af\u30b9\u5316\u3055\u308c\u3066\u3044\u307e\u3059\u3002EA\u304b\u3089\u30a2\u30af\u30bb\u30b9\u3067\u304d\u308b\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306f\u9650\u5b9a\u3055\u308c\u3066\u304a\u308a\u3001\u4efb\u610f\u306e\u30d1\u30b9\u3078\u306e\u30a2\u30af\u30bb\u30b9\u306f\u3067\u304d\u307e\u305b\u3093\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u30d5\u30a1\u30a4\u30eb\u30a2\u30af\u30bb\u30b9\u306e\u30b5\u30f3\u30c9\u30dc\u30c3\u30af\u30b9<\/h3>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\">\n<table class=\"has-fixed-layout\"><thead><tr><th>\u30c7\u30a3\u30ec\u30af\u30c8\u30ea<\/th><th>\u30d1\u30b9<\/th><th>\u7528\u9014<\/th><\/tr><\/thead><tbody><tr><td>\u30ed\u30fc\u30ab\u30eb<\/td><td><code>MQL5Files<\/code><\/td><td>EA\u56fa\u6709\u306e\u30c7\u30fc\u30bf\uff08\u30c7\u30d5\u30a9\u30eb\u30c8\uff09<\/td><\/tr><tr><td>\u5171\u901a<\/td><td><code>TerminalCommonFiles<\/code><\/td><td>\u8907\u6570\u30bf\u30fc\u30df\u30ca\u30eb\u9593\u3067\u5171\u6709\u3059\u308b\u30c7\u30fc\u30bf<\/td><\/tr><\/tbody><\/table>\n<\/figure>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-cpp\" data-lang=\"C++\" data-file=\"\u30b5\u30f3\u30c9\u30dc\u30c3\u30af\u30b9\u306e\u30d1\u30b9\u78ba\u8a8d\"><code>\/\/ \u30ed\u30fc\u30ab\u30eb\u30d5\u30a9\u30eb\u30c0\u306e\u30d1\u30b9\nstring localPath = TerminalInfoString(TERMINAL_DATA_PATH) +\"MQL5Files\";\nPrint(\"\u30ed\u30fc\u30ab\u30eb:\", localPath);\n\/\/ \u4f8b: C:UsersuserAppDataRoamingMetaQuotesTerminalXXXXMQL5Files\n\n\/\/ \u5171\u901a\u30d5\u30a9\u30eb\u30c0\u306e\u30d1\u30b9\nstring commonPath = TerminalInfoString(TERMINAL_COMMONDATA_PATH) +\"Files\";\nPrint(\"\u5171\u901a:\", commonPath);\n\/\/ \u4f8b: C:UsersuserAppDataRoamingMetaQuotesTerminalCommonFiles<\/code><\/pre><\/div>\n\n\n\n<div class=\"swell-block-capbox cap_box is-style-shadow\">\n<div class=\"cap_box_ttl\" data-has-icon=\"1\">\n<svg height=\"1em\" width=\"1em\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" viewBox=\"0 0 48 48\"><path d=\"M47 37.9 27.5 4.1c-.7-1.3-2-2-3.5-2s-2.7.7-3.5 2L1 37.9c-.7 1.3-.7 2.7 0 4 .7 1.3 2 2 3.5 2h39.1c1.4 0 2.7-.7 3.5-2 .6-1.3.6-2.7-.1-4zM21.5 17.5c0-1.4 1.1-2.5 2.5-2.5s2.5 1.1 2.5 2.5v10c0 1.4-1.1 2.5-2.5 2.5s-2.5-1.1-2.5-2.5v-10zM24 38c-1.7 0-3-1.3-3-3s1.3-3 3-3 3 1.3 3 3-1.3 3-3 3z\"><\/path><\/svg>\n<span><strong>\u91cd\u8981<\/strong><\/span>\n<\/div>\n<div class=\"cap_box_content\">\n\n<p>MQL5\u306e\u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u3067\u306f\u3001<code>MQL5Files<\/code>\u30d5\u30a9\u30eb\u30c0\u306e\u5916\u306b\u306f\u30a2\u30af\u30bb\u30b9\u3067\u304d\u307e\u305b\u3093\u3002<code>\"..\/\"<\/code>\u3067\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u9061\u308b\u3053\u3068\u3082\u30d6\u30ed\u30c3\u30af\u3055\u308c\u307e\u3059\u3002\u30c6\u30b9\u30bf\u30fc\uff08\u30d0\u30c3\u30af\u30c6\u30b9\u30c8\uff09\u4e2d\u306f\u5c02\u7528\u306e\u30b5\u30f3\u30c9\u30dc\u30c3\u30af\u30b9\u304c\u4f7f\u7528\u3055\u308c\u308b\u305f\u3081\u3001\u30d5\u30a1\u30a4\u30eb\u30d1\u30b9\u304c\u7570\u306a\u308a\u307e\u3059\u3002<\/p>\n\n<\/div>\n<\/div>\n\n\n\n<h3 class=\"wp-block-heading\">MQL4\u3068MQL5\u306e\u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u306e\u9055\u3044<\/h3>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\">\n<table class=\"has-fixed-layout\"><thead><tr><th>\u9805\u76ee<\/th><th>MQL4<\/th><th>MQL5<\/th><\/tr><\/thead><tbody><tr><td>\u30c7\u30d5\u30a9\u30eb\u30c8\u30d1\u30b9<\/td><td><code>MQL4Files<\/code><\/td><td><code>MQL5Files<\/code><\/td><\/tr><tr><td>FILE_COMMON<\/td><td>\u5bfe\u5fdc\uff08\u30d3\u30eb\u30c9600+\uff09<\/td><td>\u5bfe\u5fdc<\/td><\/tr><tr><td>FILE_SHARE_READ<\/td><td>\u5bfe\u5fdc<\/td><td>\u5bfe\u5fdc\uff08\u540c\u6642\u8aad\u307f\u53d6\u308a\u53ef\u80fd\uff09<\/td><\/tr><tr><td>FILE_SHARE_WRITE<\/td><td>\u5bfe\u5fdc<\/td><td>\u5bfe\u5fdc\uff08\u540c\u6642\u66f8\u304d\u8fbc\u307f\u53ef\u80fd\uff09<\/td><\/tr><tr><td>FileWriteArray<\/td><td>\u5bfe\u5fdc<\/td><td>\u5bfe\u5fdc<\/td><\/tr><tr><td>FileReadArray<\/td><td>\u5bfe\u5fdc<\/td><td>\u5bfe\u5fdc<\/td><\/tr><tr><td>FileFindFirst\/Next<\/td><td>\u5bfe\u5fdc<\/td><td>\u5bfe\u5fdc<\/td><\/tr><tr><td>FolderCreate<\/td><td>\u5bfe\u5fdc<\/td><td>\u5bfe\u5fdc<\/td><\/tr><tr><td>FolderDelete<\/td><td>\u5bfe\u5fdc<\/td><td>\u5bfe\u5fdc<\/td><\/tr><tr><td>Unicode\u5bfe\u5fdc<\/td><td>\u9650\u5b9a\u7684<\/td><td>\u5b8c\u5168\u5bfe\u5fdc\uff08FILE_UNICODE\uff09<\/td><\/tr><\/tbody><\/table>\n<\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"fileopen\">FileOpen\uff1a\u30d5\u30a1\u30a4\u30eb\u3092\u958b\u304f<\/h2>\n\n\n\n<p>\u30d5\u30a1\u30a4\u30eb\u3092\u958b\u3044\u3066\u30cf\u30f3\u30c9\u30eb\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\u3059\u3079\u3066\u306e\u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u306e\u8d77\u70b9\u3068\u306a\u308b\u95a2\u6570\u3067\u3059\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-cpp\" data-lang=\"C++\" data-file=\"FileOpen \u30b7\u30b0\u30cd\u30c1\u30e3\"><code>int FileOpen(\n   string  file_name,         \/\/ \u30d5\u30a1\u30a4\u30eb\u540d\n   int     open_flags,        \/\/ \u30d5\u30e9\u30b0\u306e\u7d44\u307f\u5408\u308f\u305b\n   short   delimiter = 't',  \/\/ CSV\u533a\u5207\u308a\u6587\u5b57\uff08FILE_CSV\u306e\u5834\u5408\uff09\n   uint    codepage = CP_ACP  \/\/ \u30b3\u30fc\u30c9\u30da\u30fc\u30b8\n);\n\/\/ \u623b\u308a\u5024: \u30d5\u30a1\u30a4\u30eb\u30cf\u30f3\u30c9\u30eb\uff08\u5931\u6557\u6642 INVALID_HANDLE\uff09<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">\u30d5\u30a1\u30a4\u30eb\u30aa\u30fc\u30d7\u30f3\u30d5\u30e9\u30b0<\/h3>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\">\n<table class=\"has-fixed-layout\"><thead><tr><th>\u30d5\u30e9\u30b0<\/th><th>\u5024<\/th><th>\u8aac\u660e<\/th><\/tr><\/thead><tbody><tr><td>FILE_READ<\/td><td>1<\/td><td>\u8aad\u307f\u53d6\u308a\u7528<\/td><\/tr><tr><td>FILE_WRITE<\/td><td>2<\/td><td>\u66f8\u304d\u8fbc\u307f\u7528\uff08\u30d5\u30a1\u30a4\u30eb\u304c\u5b58\u5728\u3057\u306a\u3044\u5834\u5408\u306f\u65b0\u898f\u4f5c\u6210\uff09<\/td><\/tr><tr><td>FILE_BIN<\/td><td>4<\/td><td>\u30d0\u30a4\u30ca\u30ea\u30e2\u30fc\u30c9<\/td><\/tr><tr><td>FILE_CSV<\/td><td>8<\/td><td>CSV\u30e2\u30fc\u30c9\uff08delimiter\u6307\u5b9a\u6709\u52b9\uff09<\/td><\/tr><tr><td>FILE_TXT<\/td><td>16<\/td><td>\u30c6\u30ad\u30b9\u30c8\u30e2\u30fc\u30c9\uff08\u6539\u884c\u533a\u5207\u308a\uff09<\/td><\/tr><tr><td>FILE_ANSI<\/td><td>32<\/td><td>ANSI\u6587\u5b57\u5217\uff081\u30d0\u30a4\u30c8\uff09<\/td><\/tr><tr><td>FILE_UNICODE<\/td><td>64<\/td><td>Unicode\u6587\u5b57\u5217\uff082\u30d0\u30a4\u30c8\uff09<\/td><\/tr><tr><td>FILE_SHARE_READ<\/td><td>128<\/td><td>\u4ed6\u30d7\u30ed\u30bb\u30b9\u3068\u306e\u540c\u6642\u8aad\u307f\u53d6\u308a\u3092\u8a31\u53ef<\/td><\/tr><tr><td>FILE_SHARE_WRITE<\/td><td>256<\/td><td>\u4ed6\u30d7\u30ed\u30bb\u30b9\u3068\u306e\u540c\u6642\u66f8\u304d\u8fbc\u307f\u3092\u8a31\u53ef<\/td><\/tr><tr><td>FILE_COMMON<\/td><td>4096<\/td><td>\u5171\u901a\u30d5\u30a9\u30eb\u30c0\u3092\u4f7f\u7528<\/td><\/tr><\/tbody><\/table>\n<\/figure>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-cpp\" data-lang=\"C++\" data-file=\"FileOpen \u57fa\u672c\u30d1\u30bf\u30fc\u30f3\"><code>\/\/ \u30d1\u30bf\u30fc\u30f31: CSV\u30d5\u30a1\u30a4\u30eb\u306e\u65b0\u898f\u4f5c\u6210\nint handle = FileOpen(\"trade_log.csv\", FILE_WRITE | FILE_CSV | FILE_ANSI, ',');\nif(handle == INVALID_HANDLE)\n  {\n   Print(\"\u30d5\u30a1\u30a4\u30eb\u30aa\u30fc\u30d7\u30f3\u5931\u6557:\", GetLastError());\n   return;\n  }\n\/\/ ... \u66f8\u304d\u8fbc\u307f\u51e6\u7406 ...\nFileClose(handle);\n\n\/\/ \u30d1\u30bf\u30fc\u30f32: \u30c6\u30ad\u30b9\u30c8\u30d5\u30a1\u30a4\u30eb\u306e\u8aad\u307f\u53d6\u308a\nhandle = FileOpen(\"settings.txt\", FILE_READ | FILE_TXT | FILE_ANSI);\n\n\/\/ \u30d1\u30bf\u30fc\u30f33: \u30d0\u30a4\u30ca\u30ea\u30d5\u30a1\u30a4\u30eb\u306e\u8aad\u307f\u66f8\u304d\nhandle = FileOpen(\"data.bin\", FILE_READ | FILE_WRITE | FILE_BIN);\n\n\/\/ \u30d1\u30bf\u30fc\u30f34: \u8ffd\u8a18\u30e2\u30fc\u30c9\uff08FILE_READ | FILE_WRITE + FileSeek\uff09\nhandle = FileOpen(\"log.txt\", FILE_READ | FILE_WRITE | FILE_TXT | FILE_SHARE_READ);\nif(handle != INVALID_HANDLE)\n  {\n   FileSeek(handle, 0, SEEK_END);  \/\/ \u30d5\u30a1\u30a4\u30eb\u672b\u5c3e\u306b\u79fb\u52d5\n   FileWriteString(handle,\"\u65b0\u3057\u3044\u30ed\u30b0\u884cn\");\n   FileClose(handle);\n  }\n\n\/\/ \u30d1\u30bf\u30fc\u30f35: \u5171\u901a\u30d5\u30a9\u30eb\u30c0\uff08\u8907\u6570\u30bf\u30fc\u30df\u30ca\u30eb\u9593\u5171\u6709\uff09\nhandle = FileOpen(\"shared_data.csv\",\n                      FILE_WRITE | FILE_CSV | FILE_COMMON | FILE_SHARE_READ, ',');<\/code><\/pre><\/div>\n\n\n\n<p class=\"is-style-big_icon_caution\">\u30d5\u30a1\u30a4\u30eb\u3092\u958b\u3044\u305f\u3089\u5fc5\u305a<code>FileClose()<\/code>\u3067\u9589\u3058\u3066\u304f\u3060\u3055\u3044\u3002\u9589\u3058\u5fd8\u308c\u308b\u3068\u30d5\u30a1\u30a4\u30eb\u304c\u30ed\u30c3\u30af\u3055\u308c\u3001\u4ed6\u306eEA\u3084\u624b\u52d5\u3067\u306e\u30a2\u30af\u30bb\u30b9\u304c\u3067\u304d\u306a\u304f\u306a\u308a\u307e\u3059\u3002\u7279\u306bOnTick()\u5185\u3067\u6bce\u30c6\u30a3\u30c3\u30af\u30d5\u30a1\u30a4\u30eb\u3092\u958b\u304f\u5834\u5408\u306f\u6ce8\u610f\u304c\u5fc5\u8981\u3067\u3059\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"fileclose\">FileClose\uff1a\u30d5\u30a1\u30a4\u30eb\u3092\u9589\u3058\u308b<\/h2>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-cpp\" data-lang=\"C++\" data-file=\"FileClose\"><code>void FileClose(\n   int  file_handle  \/\/ \u30d5\u30a1\u30a4\u30eb\u30cf\u30f3\u30c9\u30eb\n);\n\n\/\/ \u5b89\u5168\u306a\u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u30d1\u30bf\u30fc\u30f3\nvoid SafeFileWrite(string filename, string content)\n  {\n   int handle = FileOpen(filename, FILE_WRITE | FILE_TXT | FILE_ANSI);\n   if(handle == INVALID_HANDLE)\n     {\n      Print(\"\u30d5\u30a1\u30a4\u30eb\u30aa\u30fc\u30d7\u30f3\u5931\u6557:\", filename,\" Error:\", GetLastError());\n      return;\n     }\n\n   FileWriteString(handle, content);\n   FileClose(handle);\n  }<\/code><\/pre><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"filewrite\">FileWrite\uff1aCSV\u884c\u306e\u66f8\u304d\u8fbc\u307f<\/h2>\n\n\n\n<p>CSV\u30e2\u30fc\u30c9\u3067\u958b\u3044\u305f\u30d5\u30a1\u30a4\u30eb\u306b\u3001\u533a\u5207\u308a\u6587\u5b57\u3067\u533a\u5207\u3089\u308c\u305f1\u884c\u3092\u66f8\u304d\u8fbc\u307f\u307e\u3059\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-cpp\" data-lang=\"C++\" data-file=\"FileWrite \u30b7\u30b0\u30cd\u30c1\u30e3\u3068\u4f7f\u7528\u4f8b\"><code>uint FileWrite(\n   int  file_handle,  \/\/ \u30d5\u30a1\u30a4\u30eb\u30cf\u30f3\u30c9\u30eb\n   ...                \/\/ \u66f8\u304d\u8fbc\u3080\u30c7\u30fc\u30bf\uff08\u53ef\u5909\u9577\u30fb\u578b\u6df7\u5728OK\uff09\n);\n\/\/ \u623b\u308a\u5024: \u66f8\u304d\u8fbc\u3093\u3060\u30d0\u30a4\u30c8\u6570\uff080\u306f\u30a8\u30e9\u30fc\uff09\n\n\/\/ CSV\u30c8\u30ec\u30fc\u30c9\u30ed\u30b0\u306e\u4f5c\u6210\nvoid WriteTradeLog(ulong ticket, string action, double price, double lot, double profit)\n  {\n   int handle = FileOpen(\"trade_log.csv\",\n                         FILE_READ | FILE_WRITE | FILE_CSV | FILE_ANSI, ',');\n   if(handle == INVALID_HANDLE) return;\n\n   \/\/ \u30d5\u30a1\u30a4\u30eb\u304c\u7a7a\u306e\u5834\u5408\u3001\u30d8\u30c3\u30c0\u30fc\u3092\u66f8\u304d\u8fbc\u3080\n   if(FileSize(handle) == 0)\n     {\n      FileWrite(handle,\"DateTime\",\"Ticket\",\"Action\",\"Symbol\",\"Price\",\"Lot\",\"Profit\",\"Balance\");\n     }\n\n   FileSeek(handle, 0, SEEK_END);\n   FileWrite(handle,\n      TimeToString(TimeCurrent(), TIME_DATE | TIME_SECONDS),\n      ticket, action, _Symbol,\n      DoubleToString(price, _Digits),\n      DoubleToString(lot, 2),\n      DoubleToString(profit, 2),\n      DoubleToString(AccountInfoDouble(ACCOUNT_BALANCE), 2)\n   );\n   FileClose(handle);\n  }<\/code><\/pre><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"filewritestring\">FileWriteString\uff1a\u30c6\u30ad\u30b9\u30c8\u66f8\u304d\u8fbc\u307f<\/h2>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-cpp\" data-lang=\"C++\" data-file=\"FileWriteString \u30b7\u30b0\u30cd\u30c1\u30e3\u3068\u4f7f\u7528\u4f8b\"><code>uint FileWriteString(\n   int     file_handle,    \/\/ \u30d5\u30a1\u30a4\u30eb\u30cf\u30f3\u30c9\u30eb\n   string  text_string,    \/\/ \u66f8\u304d\u8fbc\u3080\u6587\u5b57\u5217\n   int     length = -1     \/\/ \u66f8\u304d\u8fbc\u3080\u6587\u5b57\u6570\uff08-1=\u5168\u90e8\uff09\n);\n\n\/\/ \u30c6\u30ad\u30b9\u30c8\u30ed\u30b0\u306e\u66f8\u304d\u8fbc\u307f\nvoid AppendLog(string message)\n  {\n   int handle = FileOpen(\"ea_log.txt\",\n                         FILE_READ | FILE_WRITE | FILE_TXT |\n                         FILE_ANSI | FILE_SHARE_READ);\n   if(handle == INVALID_HANDLE) return;\n\n   FileSeek(handle, 0, SEEK_END);\n   string line = StringFormat(\"[%s] %sn\",\n                              TimeToString(TimeCurrent(), TIME_SECONDS),\n                              message);\n   FileWriteString(handle, line);\n   FileClose(handle);\n  }<\/code><\/pre><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"filewriteinteger-filewritedouble\">FileWriteInteger \/ FileWriteDouble\uff1a\u6570\u5024\u306e\u66f8\u304d\u8fbc\u307f<\/h2>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-cpp\" data-lang=\"C++\" data-file=\"\u6570\u5024\u306e\u30d0\u30a4\u30ca\u30ea\u66f8\u304d\u8fbc\u307f\"><code>uint FileWriteInteger(\n   int  file_handle,               \/\/ \u30d5\u30a1\u30a4\u30eb\u30cf\u30f3\u30c9\u30eb\n   int  value,                     \/\/ \u66f8\u304d\u8fbc\u3080\u6574\u6570\u5024\n   int  size = INT_VALUE           \/\/ \u30d0\u30a4\u30c8\u30b5\u30a4\u30ba\uff08CHAR_VALUE=1, SHORT_VALUE=2, INT_VALUE=4\uff09\n);\n\nuint FileWriteDouble(\n   int     file_handle,\n   double  value\n);\n\n\/\/ \u30d0\u30a4\u30ca\u30ea\u5f62\u5f0f\u3067\u30c7\u30fc\u30bf\u3092\u4fdd\u5b58\uff08\u9ad8\u901f\u30fb\u30b3\u30f3\u30d1\u30af\u30c8\uff09\nvoid SaveBinaryData(double &prices[], int count)\n  {\n   int handle = FileOpen(\"price_data.bin\", FILE_WRITE | FILE_BIN);\n   if(handle == INVALID_HANDLE) return;\n\n   \/\/ \u307e\u305a\u8981\u7d20\u6570\u3092\u66f8\u304d\u8fbc\u3080\n   FileWriteInteger(handle, count);\n\n   \/\/ \u4fa1\u683c\u30c7\u30fc\u30bf\u3092\u66f8\u304d\u8fbc\u3080\n   for(int i = 0; i < count; i++)\n      FileWriteDouble(handle, prices[i]);\n\n   FileClose(handle);\n  }\n\n\/\/ \u30d0\u30a4\u30ca\u30ea\u30c7\u30fc\u30bf\u306e\u8aad\u307f\u8fbc\u307f\nbool LoadBinaryData(double &#038;prices[])\n  {\n   int handle = FileOpen(\"price_data.bin\", FILE_READ | FILE_BIN);\n   if(handle == INVALID_HANDLE) return false;\n\n   int count = FileReadInteger(handle);\n   ArrayResize(prices, count);\n\n   for(int i = 0; i < count; i++)\n      prices[i] = FileReadDouble(handle);\n\n   FileClose(handle);\n   return true;\n  }<\/code><\/pre><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"filewritearray-filereadarray\">FileWriteArray \/ FileReadArray\uff1a\u914d\u5217\u306e\u4e00\u62ec\u4fdd\u5b58\u30fb\u8aad\u307f\u8fbc\u307f<\/h2>\n\n\n\n<p>\u914d\u5217\u3092\u307e\u308b\u3054\u3068\u30d5\u30a1\u30a4\u30eb\u306b\u4fdd\u5b58\u30fb\u8aad\u307f\u8fbc\u307f\u3057\u307e\u3059\u3002\u69cb\u9020\u4f53\u914d\u5217\u306b\u3082\u5bfe\u5fdc\u3057\u3066\u304a\u308a\u3001\u5927\u91cf\u306e\u30c7\u30fc\u30bf\u3092\u52b9\u7387\u7684\u306b\u6271\u3048\u307e\u3059\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-cpp\" data-lang=\"C++\" data-file=\"FileWriteArray \/ FileReadArray\"><code>uint FileWriteArray(\n   int          file_handle,        \/\/ \u30d5\u30a1\u30a4\u30eb\u30cf\u30f3\u30c9\u30eb\n   const void&  array[],            \/\/ \u66f8\u304d\u8fbc\u3080\u914d\u5217\n   int          start = 0,          \/\/ \u958b\u59cb\u4f4d\u7f6e\n   int          count = WHOLE_ARRAY \/\/ \u8981\u7d20\u6570\n);\n\nuint FileReadArray(\n   int    file_handle,\n   void&  array[],\n   int    start = 0,\n   int    count = WHOLE_ARRAY\n);\n\n\/\/ MqlRates\uff08\u30ed\u30fc\u30bd\u30af\u8db3\u30c7\u30fc\u30bf\uff09\u306e\u4fdd\u5b58\u3068\u8aad\u307f\u8fbc\u307f\nvoid SaveRatesToFile(string filename)\n  {\n   MqlRates rates[];\n   ArraySetAsSeries(rates, true);\n   int copied = CopyRates(_Symbol, PERIOD_H1, 0, 1000, rates);\n   if(copied <= 0) return;\n\n   int handle = FileOpen(filename, FILE_WRITE | FILE_BIN);\n   if(handle == INVALID_HANDLE) return;\n\n   FileWriteInteger(handle, copied);  \/\/ \u8981\u7d20\u6570\n   FileWriteArray(handle, rates, 0, copied);\n   FileClose(handle);\n\n   Print(copied,\"\u672c\u306e\u30d0\u30fc\u30c7\u30fc\u30bf\u3092\u4fdd\u5b58\u3057\u307e\u3057\u305f\");\n  }\n\nbool LoadRatesFromFile(string filename, MqlRates &#038;rates[])\n  {\n   int handle = FileOpen(filename, FILE_READ | FILE_BIN);\n   if(handle == INVALID_HANDLE) return false;\n\n   int count = FileReadInteger(handle);\n   ArrayResize(rates, count);\n   FileReadArray(handle, rates, 0, count);\n   FileClose(handle);\n\n   Print(count,\"\u672c\u306e\u30d0\u30fc\u30c7\u30fc\u30bf\u3092\u8aad\u307f\u8fbc\u307f\u307e\u3057\u305f\");\n   return true;\n  }\n\n\/\/ \u30ab\u30b9\u30bf\u30e0\u69cb\u9020\u4f53\u306e\u4fdd\u5b58\nstruct TradeRecord\n  {\n   datetime          time;\n   string            symbol;  \/\/ \u6ce8\u610f: string\u578b\u306f\u4fdd\u5b58\u4e0d\u53ef\n   double            price;\n   double            lot;\n   double            profit;\n  };\n\/\/ \u203b string\u578b\u3092\u542b\u3080\u69cb\u9020\u4f53\u306fFileWriteArray\u3067\u4fdd\u5b58\u3067\u304d\u307e\u305b\u3093\u3002\n\/\/ \u30d0\u30a4\u30ca\u30ea\u4fdd\u5b58\u3059\u308b\u5834\u5408\u306fchar\u914d\u5217\u306b\u7f6e\u304d\u63db\u3048\u308b\u304b\u3001CSV\u3067\u4fdd\u5b58\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/code><\/pre><\/div>\n\n\n\n<div class=\"swell-block-capbox cap_box is-style-shadow\">\n<div class=\"cap_box_ttl\" data-has-icon=\"1\">\n<svg height=\"1em\" width=\"1em\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" viewBox=\"0 0 48 48\"><path d=\"M47 37.9 27.5 4.1c-.7-1.3-2-2-3.5-2s-2.7.7-3.5 2L1 37.9c-.7 1.3-.7 2.7 0 4 .7 1.3 2 2 3.5 2h39.1c1.4 0 2.7-.7 3.5-2 .6-1.3.6-2.7-.1-4zM21.5 17.5c0-1.4 1.1-2.5 2.5-2.5s2.5 1.1 2.5 2.5v10c0 1.4-1.1 2.5-2.5 2.5s-2.5-1.1-2.5-2.5v-10zM24 38c-1.7 0-3-1.3-3-3s1.3-3 3-3 3 1.3 3 3-1.3 3-3 3z\"><\/path><\/svg>\n<span><strong>\u91cd\u8981<\/strong><\/span>\n<\/div>\n<div class=\"cap_box_content\">\n\n<p><code>FileWriteArray()<\/code>\u3067<strong>string\u578b\u3092\u542b\u3080\u69cb\u9020\u4f53<\/strong>\u306f\u4fdd\u5b58\u3067\u304d\u307e\u305b\u3093\u3002\u6587\u5b57\u5217\u30c7\u30fc\u30bf\u3092\u542b\u3080\u5834\u5408\u306fCSV\u5f62\u5f0f\u3067\u4fdd\u5b58\u3059\u308b\u304b\u3001\u6587\u5b57\u5217\u3092\u56fa\u5b9a\u9577\u306echar\u914d\u5217\u306b\u5909\u63db\u3057\u3066\u304b\u3089\u4fdd\u5b58\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n\n<\/div>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"filereadstring\">FileReadString\uff1a\u30c6\u30ad\u30b9\u30c8\u8aad\u307f\u8fbc\u307f<\/h2>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-cpp\" data-lang=\"C++\" data-file=\"FileReadString \u30b7\u30b0\u30cd\u30c1\u30e3\u3068\u4f7f\u7528\u4f8b\"><code>string FileReadString(\n   int  file_handle,   \/\/ \u30d5\u30a1\u30a4\u30eb\u30cf\u30f3\u30c9\u30eb\n   int  length = -1    \/\/ \u8aad\u307f\u53d6\u308a\u6587\u5b57\u6570\uff08-1=\u533a\u5207\u308a\u307e\u3067\uff09\n);\n\n\/\/ \u30c6\u30ad\u30b9\u30c8\u30d5\u30a1\u30a4\u30eb\u306e\u5168\u884c\u8aad\u307f\u8fbc\u307f\nvoid ReadAllLines(string filename)\n  {\n   int handle = FileOpen(filename, FILE_READ | FILE_TXT | FILE_ANSI);\n   if(handle == INVALID_HANDLE)\n     {\n      Print(\"\u30d5\u30a1\u30a4\u30eb\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093:\", filename);\n      return;\n     }\n\n   int lineNum = 0;\n   while(!FileIsEnding(handle))\n     {\n      string line = FileReadString(handle);\n      lineNum++;\n      Print(lineNum,\":\", line);\n     }\n   FileClose(handle);\n  }\n\n\/\/ CSV\u30d5\u30a1\u30a4\u30eb\u306e\u8aad\u307f\u8fbc\u307f\uff08\u30d5\u30a3\u30fc\u30eb\u30c9\u3054\u3068\uff09\nvoid ReadCsvFile(string filename)\n  {\n   int handle = FileOpen(filename, FILE_READ | FILE_CSV | FILE_ANSI, ',');\n   if(handle == INVALID_HANDLE) return;\n\n   while(!FileIsEnding(handle))\n     {\n      string field1 = FileReadString(handle);  \/\/ \u6700\u521d\u306e\u30d5\u30a3\u30fc\u30eb\u30c9\n      string field2 = FileReadString(handle);  \/\/ 2\u756a\u76ee\u306e\u30d5\u30a3\u30fc\u30eb\u30c9\n      double field3 = FileReadNumber(handle);  \/\/ 3\u756a\u76ee\uff08\u6570\u5024\uff09\n\n      if(StringLen(field1) > 0)\n         Print(field1,\" |\", field2,\" |\", field3);\n     }\n   FileClose(handle);\n  }<\/code><\/pre><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"fileisexist-filedelete\">FileIsExist \/ FileDelete\uff1a\u30d5\u30a1\u30a4\u30eb\u306e\u5b58\u5728\u78ba\u8a8d\u3068\u524a\u9664<\/h2>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-cpp\" data-lang=\"C++\" data-file=\"FileIsExist \/ FileDelete\"><code>bool FileIsExist(\n   const string  file_name,         \/\/ \u30d5\u30a1\u30a4\u30eb\u540d\n   int           common_flag = 0    \/\/ FILE_COMMON\u3067\u5171\u901a\u30d5\u30a9\u30eb\u30c0\u6307\u5b9a\n);\n\nbool FileDelete(\n   const string  file_name,\n   int           common_flag = 0\n);\n\n\/\/ \u4f7f\u7528\u4f8b: \u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306e\u5b58\u5728\u78ba\u8a8d\nif(FileIsExist(\"ea_settings.txt\"))\n   Print(\"\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f\");\nelse\n   Print(\"\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3002\u30c7\u30d5\u30a9\u30eb\u30c8\u5024\u3092\u4f7f\u7528\u3057\u307e\u3059\u3002\");\n\n\/\/ \u53e4\u3044\u30ed\u30b0\u30d5\u30a1\u30a4\u30eb\u306e\u524a\u9664\nvoid CleanOldLogs(int daysToKeep)\n  {\n   string filename;\n   long searchHandle = FileFindFirst(\"ea_log_*.txt\", filename);\n   if(searchHandle == INVALID_HANDLE) return;\n\n   do\n     {\n      \/\/ \u30d5\u30a1\u30a4\u30eb\u540d\u304b\u3089\u65e5\u4ed8\u3092\u89e3\u6790\u3057\u3066\u53e4\u3044\u3082\u306e\u3092\u524a\u9664\n      \/\/ \uff08\u7c21\u7565\u5316\u3057\u305f\u4f8b\uff09\n      if(FileIsExist(filename))\n        {\n         int handle = FileOpen(filename, FILE_READ | FILE_BIN);\n         if(handle != INVALID_HANDLE)\n           {\n            \/\/ \u30d5\u30a1\u30a4\u30eb\u306e\u66f4\u65b0\u65e5\u6642\u30c1\u30a7\u30c3\u30af\u306f\u76f4\u63a5\u53d6\u5f97\u3067\u304d\u306a\u3044\u305f\u3081\n            \/\/ \u30d5\u30a1\u30a4\u30eb\u540d\u306b\u65e5\u4ed8\u3092\u542b\u3081\u308b\u65b9\u5f0f\u304c\u63a8\u5968\n            FileClose(handle);\n           }\n        }\n     }\n   while(FileFindNext(searchHandle, filename));\n   FileFindClose(searchHandle);\n  }<\/code><\/pre><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"filefind\">FileFindFirst \/ FileFindNext \/ FileFindClose\uff1a\u30d5\u30a1\u30a4\u30eb\u306e\u691c\u7d22<\/h2>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-cpp\" data-lang=\"C++\" data-file=\"\u30d5\u30a1\u30a4\u30eb\u691c\u7d22\"><code>long FileFindFirst(\n   const string  file_filter,   \/\/ \u691c\u7d22\u30d1\u30bf\u30fc\u30f3\uff08\u30ef\u30a4\u30eb\u30c9\u30ab\u30fc\u30c9\u5bfe\u5fdc\uff09\n   string&       returned_filename,\n   int           common_flag = 0\n);\n\nbool FileFindNext(\n   long     search_handle,\n   string&  returned_filename\n);\n\nvoid FileFindClose(\n   long  search_handle\n);\n\n\/\/ MQL5Files \u5185\u306eCSV\u30d5\u30a1\u30a4\u30eb\u4e00\u89a7\u3092\u53d6\u5f97\nvoid ListCsvFiles()\n  {\n   string filename;\n   long handle = FileFindFirst(\"*.csv\", filename);\n   if(handle == INVALID_HANDLE)\n     {\n      Print(\"CSV\u30d5\u30a1\u30a4\u30eb\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\");\n      return;\n     }\n\n   Print(\"=== CSV\u30d5\u30a1\u30a4\u30eb\u4e00\u89a7 ===\");\n   int count = 0;\n   do\n     {\n      count++;\n      Print(count,\":\", filename);\n     }\n   while(FileFindNext(handle, filename));\n\n   FileFindClose(handle);\n   Print(\"\u5408\u8a08:\", count,\"\u30d5\u30a1\u30a4\u30eb\");\n  }\n\n\/\/ \u30b5\u30d6\u30d5\u30a9\u30eb\u30c0\u5185\u306e\u691c\u7d22\nvoid ListFilesInFolder(string folder)\n  {\n   string filename;\n   long handle = FileFindFirst(folder +\"*.*\", filename);\n   if(handle == INVALID_HANDLE) return;\n\n   do\n     {\n      Print(folder,\"\", filename);\n     }\n   while(FileFindNext(handle, filename));\n\n   FileFindClose(handle);\n  }<\/code><\/pre><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"foldercreate-folderdelete\">FolderCreate \/ FolderDelete\uff1a\u30d5\u30a9\u30eb\u30c0\u64cd\u4f5c<\/h2>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-cpp\" data-lang=\"C++\" data-file=\"FolderCreate \/ FolderDelete\"><code>bool FolderCreate(\n   string  folder_name,        \/\/ \u30d5\u30a9\u30eb\u30c0\u540d\n   int     common_flag = 0     \/\/ FILE_COMMON\u3067\u5171\u901a\u30d5\u30a9\u30eb\u30c0\n);\n\nbool FolderDelete(\n   string  folder_name,\n   int     common_flag = 0\n);\n\n\/\/ EA\u7528\u306e\u30b5\u30d6\u30d5\u30a9\u30eb\u30c0\u3092\u4f5c\u6210\nstring eaFolder =\"MyEA_v2\";\n\/\/ FolderCreate\u306f\u65e2\u5b58\u30d5\u30a9\u30eb\u30c0\u3067\u3082\u554f\u984c\u306a\u304f\u52d5\u4f5c\u3059\u308b\n   FolderCreate(eaFolder);\n\n\/\/ \u65e5\u4ed8\u5225\u306e\u30ed\u30b0\u30d5\u30a9\u30eb\u30c0\nMqlDateTime dt;\nTimeCurrent(dt);\nstring dateFolder = StringFormat(\"logs%04d%02d%02d\", dt.year, dt.mon, dt.day);\nFolderCreate(dateFolder);\n\n\/\/ \u30d5\u30a9\u30eb\u30c0\u5185\u306b\u30d5\u30a1\u30a4\u30eb\u3092\u4f5c\u6210\nint handle = FileOpen(dateFolder +\"trade_log.csv\",\n                      FILE_WRITE | FILE_CSV | FILE_ANSI, ',');\nif(handle != INVALID_HANDLE)\n  {\n   FileWrite(handle,\"Time\",\"Action\",\"Price\");\n   FileClose(handle);\n  }<\/code><\/pre><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"fileseek-filetell-filesize\">FileSeek \/ FileTell \/ FileSize\uff1a\u30d5\u30a1\u30a4\u30eb\u30dd\u30a4\u30f3\u30bf\u64cd\u4f5c<\/h2>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-cpp\" data-lang=\"C++\" data-file=\"\u30d5\u30a1\u30a4\u30eb\u30dd\u30a4\u30f3\u30bf\u64cd\u4f5c\"><code>bool FileSeek(\n   int   file_handle,  \/\/ \u30d5\u30a1\u30a4\u30eb\u30cf\u30f3\u30c9\u30eb\n   long  offset,       \/\/ \u30aa\u30d5\u30bb\u30c3\u30c8\uff08\u30d0\u30a4\u30c8\u6570\uff09\n   int   origin        \/\/ \u57fa\u6e96\u4f4d\u7f6e: SEEK_SET(\u5148\u982d), SEEK_CUR(\u73fe\u5728\u4f4d\u7f6e), SEEK_END(\u672b\u5c3e)\n);\n\nulong FileTell(\n   int  file_handle    \/\/ \u73fe\u5728\u4f4d\u7f6e\u3092\u53d6\u5f97\n);\n\nulong FileSize(\n   int  file_handle    \/\/ \u30d5\u30a1\u30a4\u30eb\u30b5\u30a4\u30ba\u3092\u53d6\u5f97\n);\n\n\/\/ \u8ffd\u8a18\u30d1\u30bf\u30fc\u30f3\nvoid AppendToFile(string filename, string text)\n  {\n   int handle = FileOpen(filename, FILE_READ | FILE_WRITE | FILE_TXT | FILE_ANSI);\n   if(handle == INVALID_HANDLE)\n     {\n      \/\/ \u30d5\u30a1\u30a4\u30eb\u304c\u5b58\u5728\u3057\u306a\u3044\u5834\u5408\u306f\u65b0\u898f\u4f5c\u6210\n      handle = FileOpen(filename, FILE_WRITE | FILE_TXT | FILE_ANSI);\n      if(handle == INVALID_HANDLE) return;\n     }\n   else\n      FileSeek(handle, 0, SEEK_END);  \/\/ \u672b\u5c3e\u306b\u79fb\u52d5\n\n   FileWriteString(handle, text +\"n\");\n   FileClose(handle);\n  }\n\n\/\/ \u30d5\u30a1\u30a4\u30eb\u30b5\u30a4\u30ba\u306e\u78ba\u8a8d\nvoid CheckFileSize(string filename)\n  {\n   int handle = FileOpen(filename, FILE_READ | FILE_BIN);\n   if(handle == INVALID_HANDLE) return;\n\n   ulong size = FileSize(handle);\n   FileClose(handle);\n\n   if(size > 10 * 1024 * 1024)  \/\/ 10MB\u8d85\n      Print(\"\u8b66\u544a: \u30d5\u30a1\u30a4\u30eb\u30b5\u30a4\u30ba\u304c\u5927\u304d\u3044\u3067\u3059:\", size \/ 1024,\"KB\");\n  }<\/code><\/pre><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"fileflush\">FileFlush\uff1a\u30d0\u30c3\u30d5\u30a1\u306e\u30d5\u30e9\u30c3\u30b7\u30e5<\/h2>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-cpp\" data-lang=\"C++\" data-file=\"FileFlush\"><code>void FileFlush(\n   int  file_handle  \/\/ \u30d5\u30a1\u30a4\u30eb\u30cf\u30f3\u30c9\u30eb\n);\n\n\/\/ \u30ea\u30a2\u30eb\u30bf\u30a4\u30e0\u30ed\u30b0\u3067\u306e\u4f7f\u7528\n\/\/ FileClose()\u305b\u305a\u306b\u3001\u66f8\u304d\u8fbc\u3093\u3060\u30c7\u30fc\u30bf\u3092\u30c7\u30a3\u30b9\u30af\u306b\u78ba\u5b9f\u306b\u4fdd\u5b58\nint logHandle = INVALID_HANDLE;\n\nint OnInit()\n  {\n   logHandle = FileOpen(\"realtime_log.txt\",\n                        FILE_WRITE | FILE_TXT | FILE_SHARE_READ | FILE_ANSI);\n   return logHandle != INVALID_HANDLE ? INIT_SUCCEEDED : INIT_FAILED;\n  }\n\nvoid OnTick()\n  {\n   if(logHandle == INVALID_HANDLE) return;\n\n   string line = StringFormat(\"%s Bid=%.5f Ask=%.5fn\",\n                              TimeToString(TimeCurrent(), TIME_SECONDS),\n                              SymbolInfoDouble(_Symbol, SYMBOL_BID),\n                              SymbolInfoDouble(_Symbol, SYMBOL_ASK));\n   FileWriteString(logHandle, line);\n   FileFlush(logHandle);  \/\/ \u5373\u5ea7\u306b\u30c7\u30a3\u30b9\u30af\u306b\u66f8\u304d\u8fbc\u3080\n  }\n\nvoid OnDeinit(const int reason)\n  {\n   if(logHandle != INVALID_HANDLE)\n      FileClose(logHandle);\n  }<\/code><\/pre><\/div>\n\n\n\n<p class=\"is-style-icon_info\"><code>FileFlush()<\/code>\u306f\u3001\u30d5\u30a1\u30a4\u30eb\u3092\u9589\u3058\u305a\u306b\u30d0\u30c3\u30d5\u30a1\u306e\u5185\u5bb9\u3092\u30c7\u30a3\u30b9\u30af\u306b\u66f8\u304d\u51fa\u3057\u307e\u3059\u3002\u30ea\u30a2\u30eb\u30bf\u30a4\u30e0\u306e\u30ed\u30b0\u8a18\u9332\u3067\u3001\u5916\u90e8\u30d7\u30ed\u30b0\u30e9\u30e0\u304b\u3089\u30ed\u30b0\u3092\u76e3\u8996\u3057\u305f\u3044\u5834\u5408\u306b\u4f7f\u7528\u3057\u307e\u3059\u3002\u305f\u3060\u3057\u3001\u6bce\u30c6\u30a3\u30c3\u30af\u547c\u3073\u51fa\u3059\u3068\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u306b\u5f71\u97ff\u3059\u308b\u305f\u3081\u3001\u7279\u5b9a\u306e\u30a4\u30d9\u30f3\u30c8\u6642\u306e\u307f\u4f7f\u7528\u3059\u308b\u3053\u3068\u3092\u63a8\u5968\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"fileisending\">FileIsEnding \/ FileIsLineEnding\uff1a\u30d5\u30a1\u30a4\u30eb\u7d42\u7aef\u306e\u691c\u51fa<\/h2>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-cpp\" data-lang=\"C++\" data-file=\"\u30d5\u30a1\u30a4\u30eb\u7d42\u7aef\u306e\u691c\u51fa\"><code>bool FileIsEnding(int file_handle);      \/\/ \u30d5\u30a1\u30a4\u30eb\u306e\u7d42\u7aef\u306b\u9054\u3057\u305f\u304b\nbool FileIsLineEnding(int file_handle);  \/\/ \u884c\u306e\u7d42\u7aef\u306b\u9054\u3057\u305f\u304b\n\n\/\/ \u30c6\u30ad\u30b9\u30c8\u30d5\u30a1\u30a4\u30eb\u306e\u5168\u884c\u8aad\u307f\u8fbc\u307f\nint handle = FileOpen(\"data.txt\", FILE_READ | FILE_TXT | FILE_ANSI);\nif(handle != INVALID_HANDLE)\n  {\n   while(!FileIsEnding(handle))\n     {\n      string line = FileReadString(handle);\n      Print(line);\n     }\n   FileClose(handle);\n  }\n\n\/\/ CSV\u306e\u884c\u3054\u3068\u306e\u51e6\u7406\nint handle = FileOpen(\"data.csv\", FILE_READ | FILE_CSV | FILE_ANSI, ',');\nif(handle != INVALID_HANDLE)\n  {\n   while(!FileIsEnding(handle))\n     {\n      \/\/ 1\u884c\u5206\u306e\u30d5\u30a3\u30fc\u30eb\u30c9\u3092\u8aad\u307f\u8fbc\u307f\n      string fields[];\n      int fieldCount = 0;\n\n      while(!FileIsLineEnding(handle) && !FileIsEnding(handle))\n        {\n         fieldCount++;\n         ArrayResize(fields, fieldCount);\n         fields[fieldCount-1] = FileReadString(handle);\n        }\n\n      \/\/ fields\u306b1\u884c\u5206\u306e\u30c7\u30fc\u30bf\u304c\u5165\u3063\u3066\u3044\u308b\n      if(fieldCount > 0)\n         Print(\"\u5217\u6570:\", fieldCount,\" \u5148\u982d:\", fields[0]);\n     }\n   FileClose(handle);\n  }<\/code><\/pre><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"practical-patterns\">\u5b9f\u8df5\u30d1\u30bf\u30fc\u30f3\uff1aEA\u958b\u767a\u3067\u306e\u30d5\u30a1\u30a4\u30eb\u6d3b\u7528<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">\u30d1\u30bf\u30fc\u30f31\uff1aCSV\u53d6\u5f15\u30ed\u30b0\u30b7\u30b9\u30c6\u30e0<\/h3>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-cpp\" data-lang=\"C++\" data-file=\"CSV\u53d6\u5f15\u30ed\u30b0\u30b7\u30b9\u30c6\u30e0\"><code>class CTradeLogger\n  {\nprivate:\n   string            m_filename;\n   bool              m_headerWritten;\n\npublic:\n                     CTradeLogger(string eaName)\n     {\n      MqlDateTime dt;\n      TimeCurrent(dt);\n      m_filename = StringFormat(\"%s%s_%04d%02d%02d.csv\",\n                                eaName, _Symbol, dt.year, dt.mon, dt.day);\n      m_headerWritten = FileIsExist(m_filename);\n\n      \/\/ \u30d5\u30a9\u30eb\u30c0\u4f5c\u6210\n      FolderCreate(eaName);\n     }\n\n   void              LogEntry(ulong ticket, string direction, double price,\n                              double lot, double sl, double tp)\n     {\n      int handle = FileOpen(m_filename,\n                            FILE_READ | FILE_WRITE | FILE_CSV | FILE_ANSI | FILE_SHARE_READ, ',');\n      if(handle == INVALID_HANDLE) return;\n\n      if(!m_headerWritten)\n        {\n         FileWrite(handle,\"DateTime\",\"Ticket\",\"Type\",\"Symbol\",\"Price\",\"Lot\",\"SL\",\"TP\",\"Spread\",\"Comment\");\n         m_headerWritten = true;\n        }\n\n      FileSeek(handle, 0, SEEK_END);\n      FileWrite(handle,\n         TimeToString(TimeCurrent(), TIME_DATE | TIME_SECONDS),\n         ticket, direction, _Symbol,\n         DoubleToString(price, _Digits),\n         DoubleToString(lot, 2),\n         DoubleToString(sl, _Digits),\n         DoubleToString(tp, _Digits),\n         (int)SymbolInfoInteger(_Symbol, SYMBOL_SPREAD),\"Entry\"\n      );\n      FileClose(handle);\n     }\n\n   void              LogExit(ulong ticket, double closePrice, double profit)\n     {\n      int handle = FileOpen(m_filename,\n                            FILE_READ | FILE_WRITE | FILE_CSV | FILE_ANSI | FILE_SHARE_READ, ',');\n      if(handle == INVALID_HANDLE) return;\n\n      FileSeek(handle, 0, SEEK_END);\n      FileWrite(handle,\n         TimeToString(TimeCurrent(), TIME_DATE | TIME_SECONDS),\n         ticket,\"Close\", _Symbol,\n         DoubleToString(closePrice, _Digits),\"\",\"\",\"\",\n         (int)SymbolInfoInteger(_Symbol, SYMBOL_SPREAD),\n         StringFormat(\"Exit P\/L=%.2f\", profit)\n      );\n      FileClose(handle);\n     }\n  };<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">\u30d1\u30bf\u30fc\u30f32\uff1a\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306e\u8aad\u307f\u66f8\u304d<\/h3>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-cpp\" data-lang=\"C++\" data-file=\"\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306e\u8aad\u307f\u66f8\u304d\"><code>class CSettings\n  {\nprivate:\n   string            m_filename;\n   string            m_keys[];\n   string            m_values[];\n   int               m_count;\n\npublic:\n                     CSettings(string filename) : m_filename(filename), m_count(0) {}\n\n   \/\/ \u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306e\u8aad\u307f\u8fbc\u307f\uff08key=value\u5f62\u5f0f\uff09\n   bool              Load()\n     {\n      if(!FileIsExist(m_filename)) return false;\n\n      int handle = FileOpen(m_filename, FILE_READ | FILE_TXT | FILE_ANSI);\n      if(handle == INVALID_HANDLE) return false;\n\n      m_count = 0;\n      while(!FileIsEnding(handle))\n        {\n         string line = FileReadString(handle);\n         StringTrimLeft(line);\n         StringTrimRight(line);\n\n         \/\/ \u30b3\u30e1\u30f3\u30c8\u884c\u3068\u30d6\u30e9\u30f3\u30af\u884c\u3092\u30b9\u30ad\u30c3\u30d7\n         if(StringLen(line) == 0 || StringGetCharacter(line, 0) == '#')\n            continue;\n\n         \/\/ key=value \u306e\u89e3\u6790\n         int eqPos = StringFind(line,\"=\");\n         if(eqPos <= 0) continue;\n\n         m_count++;\n         ArrayResize(m_keys, m_count);\n         ArrayResize(m_values, m_count);\n         m_keys[m_count-1] = StringSubstr(line, 0, eqPos);\n         m_values[m_count-1] = StringSubstr(line, eqPos + 1);\n         StringTrimLeft(m_keys[m_count-1]);\n         StringTrimRight(m_keys[m_count-1]);\n         StringTrimLeft(m_values[m_count-1]);\n         StringTrimRight(m_values[m_count-1]);\n        }\n      FileClose(handle);\n      Print(m_count,\"\u4ef6\u306e\u8a2d\u5b9a\u3092\u8aad\u307f\u8fbc\u307f\u307e\u3057\u305f\");\n      return true;\n     }\n\n   \/\/ \u5024\u306e\u53d6\u5f97\n   string            GetString(string key, string defaultVal =\"\")\n     {\n      for(int i = 0; i < m_count; i++)\n         if(m_keys[i] == key) return m_values[i];\n      return defaultVal;\n     }\n\n   int               GetInt(string key, int defaultVal = 0)\n     { return (int)StringToInteger(GetString(key, IntegerToString(defaultVal))); }\n\n   double            GetDouble(string key, double defaultVal = 0)\n     { return StringToDouble(GetString(key, DoubleToString(defaultVal, 8))); }\n\n   bool              GetBool(string key, bool defaultVal = false)\n     { return GetString(key, defaultVal ?\"true\" :\"false\") ==\"true\"; }\n\n   \/\/ \u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306e\u4fdd\u5b58\n   bool              Save()\n     {\n      int handle = FileOpen(m_filename, FILE_WRITE | FILE_TXT | FILE_ANSI);\n      if(handle == INVALID_HANDLE) return false;\n\n      FileWriteString(handle,\"# EA Settings - Auto Generatedn\");\n      FileWriteString(handle, StringFormat(\"# %snn\",\n                      TimeToString(TimeCurrent(), TIME_DATE | TIME_SECONDS)));\n\n      for(int i = 0; i < m_count; i++)\n         FileWriteString(handle, m_keys[i] +\"=\" + m_values[i] +\"n\");\n\n      FileClose(handle);\n      return true;\n     }\n  };\n\n\/\/ \u4f7f\u7528\u4f8b\nCSettings settings(\"myea_config.txt\");\nint OnInit()\n  {\n   if(settings.Load())\n     {\n      double lotSize = settings.GetDouble(\"lot_size\", 0.01);\n      int slPips = settings.GetInt(\"sl_pips\", 50);\n      bool useTrailing = settings.GetBool(\"use_trailing\", false);\n     }\n   return INIT_SUCCEEDED;\n  }<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">\u30d1\u30bf\u30fc\u30f33\uff1aEA\u9593\u901a\u4fe1\uff08\u30d5\u30a1\u30a4\u30eb\u30d9\u30fc\u30b9\uff09<\/h3>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-cpp\" data-lang=\"C++\" data-file=\"EA\u9593\u306e\u30d5\u30a1\u30a4\u30eb\u30d9\u30fc\u30b9\u901a\u4fe1\"><code>\/\/ \u5171\u901a\u30d5\u30a9\u30eb\u30c0\u3092\u4f7f\u3063\u305fEA\u9593\u901a\u4fe1\n\/\/ \u9001\u4fe1\u5074EA\nvoid SendSignal(string signalName, int direction, double price)\n  {\n   string filename =\"signals\" + signalName +\".sig\";\n   int handle = FileOpen(filename,\n                         FILE_WRITE | FILE_TXT | FILE_COMMON | FILE_SHARE_READ);\n   if(handle == INVALID_HANDLE) return;\n\n   string data = StringFormat(\"%d|%.5f|%s|%s\",\n                              direction, price, _Symbol,\n                              TimeToString(TimeCurrent()));\n   FileWriteString(handle, data);\n   FileClose(handle);\n  }\n\n\/\/ \u53d7\u4fe1\u5074EA\nstruct SignalData\n  {\n   int    direction;\n   double price;\n   string symbol;\n   string time;\n  };\n\nbool ReceiveSignal(string signalName, SignalData &signal)\n  {\n   string filename =\"signals\" + signalName +\".sig\";\n   if(!FileIsExist(filename, FILE_COMMON)) return false;\n\n   int handle = FileOpen(filename,\n                         FILE_READ | FILE_TXT | FILE_COMMON | FILE_SHARE_WRITE);\n   if(handle == INVALID_HANDLE) return false;\n\n   string data = FileReadString(handle);\n   FileClose(handle);\n\n   \/\/ \u30b7\u30b0\u30ca\u30eb\u30c7\u30fc\u30bf\u3092\u89e3\u6790\n   string parts[];\n   if(StringSplit(data, '|', parts) < 4) return false;\n\n   signal.direction = (int)StringToInteger(parts[0]);\n   signal.price     = StringToDouble(parts[1]);\n   signal.symbol    = parts[2];\n   signal.time      = parts[3];\n\n   \/\/ \u8aad\u307f\u53d6\u308a\u5f8c\u306b\u30d5\u30a1\u30a4\u30eb\u3092\u524a\u9664\uff081\u56de\u3060\u3051\u51e6\u7406\uff09\n   FileDelete(filename, FILE_COMMON);\n   return true;\n  }<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">\u30d1\u30bf\u30fc\u30f34\uff1a\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u30ec\u30dd\u30fc\u30c8\u306e\u51fa\u529b<\/h3>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-cpp\" data-lang=\"C++\" data-file=\"\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u30ec\u30dd\u30fc\u30c8\u51fa\u529b\"><code>void GeneratePerformanceReport()\n  {\n   string filename = StringFormat(\"report_%s_%s.csv\",\n                                  _Symbol,\n                                  TimeToString(TimeCurrent(), TIME_DATE));\n   StringReplace(filename,\".\",\"\");\n   StringReplace(filename,\":\",\"\");\n\n   int handle = FileOpen(filename, FILE_WRITE | FILE_CSV | FILE_ANSI, ',');\n   if(handle == INVALID_HANDLE) return;\n\n   \/\/ \u30d8\u30c3\u30c0\u30fc\n   FileWrite(handle,\"Ticket\",\"Time\",\"Type\",\"Symbol\",\"Lot\",\"Price\",\"SL\",\"TP\",\"Profit\",\"Swap\",\"Commission\");\n\n   \/\/ \u53d6\u5f15\u5c65\u6b74\u306e\u51fa\u529b\n   HistorySelect(0, TimeCurrent());\n   int total = HistoryDealsTotal();\n   double totalProfit = 0;\n   int winCount = 0, lossCount = 0;\n\n   for(int i = 0; i < total; i++)\n     {\n      ulong ticket = HistoryDealGetTicket(i);\n      if(HistoryDealGetInteger(ticket, DEAL_ENTRY) != DEAL_ENTRY_OUT)\n         continue;\n\n      double profit = HistoryDealGetDouble(ticket, DEAL_PROFIT);\n      totalProfit += profit;\n      if(profit >= 0) winCount++; else lossCount++;\n\n      FileWrite(handle,\n         ticket,\n         TimeToString((datetime)HistoryDealGetInteger(ticket, DEAL_TIME)),\n         HistoryDealGetInteger(ticket, DEAL_TYPE) == DEAL_TYPE_BUY ?\"Buy\" :\"Sell\",\n         HistoryDealGetString(ticket, DEAL_SYMBOL),\n         DoubleToString(HistoryDealGetDouble(ticket, DEAL_VOLUME), 2),\n         DoubleToString(HistoryDealGetDouble(ticket, DEAL_PRICE), _Digits),\n         DoubleToString(HistoryDealGetDouble(ticket, DEAL_SL), _Digits),\n         DoubleToString(HistoryDealGetDouble(ticket, DEAL_TP), _Digits),\n         DoubleToString(profit, 2),\n         DoubleToString(HistoryDealGetDouble(ticket, DEAL_SWAP), 2),\n         DoubleToString(HistoryDealGetDouble(ticket, DEAL_COMMISSION), 2)\n      );\n     }\n\n   \/\/ \u30b5\u30de\u30ea\u30fc\u884c\n   FileWrite(handle,\"\");\n   FileWrite(handle,\"Summary\");\n   FileWrite(handle,\"Total Trades\", winCount + lossCount);\n   FileWrite(handle,\"Win\", winCount);\n   FileWrite(handle,\"Loss\", lossCount);\n   FileWrite(handle,\"Win Rate\",\n             DoubleToString(winCount * 100.0 \/ MathMax(winCount + lossCount, 1), 1) +\"%\");\n   FileWrite(handle,\"Total Profit\", DoubleToString(totalProfit, 2));\n\n   FileClose(handle);\n   Print(\"\u30ec\u30dd\u30fc\u30c8\u3092\u51fa\u529b\u3057\u307e\u3057\u305f:\", filename);\n  }<\/code><\/pre><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"file-functions-reference\">\u30d5\u30a1\u30a4\u30eb\u95a2\u6570\u4e00\u89a7\u30ea\u30d5\u30a1\u30ec\u30f3\u30b9<\/h2>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\">\n<table class=\"has-fixed-layout\"><thead><tr><th>\u95a2\u6570<\/th><th>\u6a5f\u80fd<\/th><th>\u5bfe\u5fdc\u30e2\u30fc\u30c9<\/th><\/tr><\/thead><tbody><tr><td>FileOpen<\/td><td>\u30d5\u30a1\u30a4\u30eb\u3092\u958b\u304f<\/td><td>CSV \/ TXT \/ BIN<\/td><\/tr><tr><td>FileClose<\/td><td>\u30d5\u30a1\u30a4\u30eb\u3092\u9589\u3058\u308b<\/td><td>\u5168\u30e2\u30fc\u30c9<\/td><\/tr><tr><td>FileWrite<\/td><td>CSV\u884c\u306e\u66f8\u304d\u8fbc\u307f<\/td><td>CSV<\/td><\/tr><tr><td>FileWriteString<\/td><td>\u6587\u5b57\u5217\u306e\u66f8\u304d\u8fbc\u307f<\/td><td>TXT \/ BIN<\/td><\/tr><tr><td>FileWriteInteger<\/td><td>\u6574\u6570\u306e\u66f8\u304d\u8fbc\u307f<\/td><td>BIN<\/td><\/tr><tr><td>FileWriteDouble<\/td><td>\u6d6e\u52d5\u5c0f\u6570\u70b9\u306e\u66f8\u304d\u8fbc\u307f<\/td><td>BIN<\/td><\/tr><tr><td>FileWriteArray<\/td><td>\u914d\u5217\u306e\u4e00\u62ec\u66f8\u304d\u8fbc\u307f<\/td><td>BIN<\/td><\/tr><tr><td>FileReadString<\/td><td>\u6587\u5b57\u5217\u306e\u8aad\u307f\u8fbc\u307f<\/td><td>CSV \/ TXT \/ BIN<\/td><\/tr><tr><td>FileReadInteger<\/td><td>\u6574\u6570\u306e\u8aad\u307f\u8fbc\u307f<\/td><td>BIN<\/td><\/tr><tr><td>FileReadDouble<\/td><td>\u6d6e\u52d5\u5c0f\u6570\u70b9\u306e\u8aad\u307f\u8fbc\u307f<\/td><td>BIN<\/td><\/tr><tr><td>FileReadArray<\/td><td>\u914d\u5217\u306e\u4e00\u62ec\u8aad\u307f\u8fbc\u307f<\/td><td>BIN<\/td><\/tr><tr><td>FileIsExist<\/td><td>\u30d5\u30a1\u30a4\u30eb\u306e\u5b58\u5728\u78ba\u8a8d<\/td><td>-<\/td><\/tr><tr><td>FileDelete<\/td><td>\u30d5\u30a1\u30a4\u30eb\u306e\u524a\u9664<\/td><td>-<\/td><\/tr><tr><td>FileFindFirst\/Next\/Close<\/td><td>\u30d5\u30a1\u30a4\u30eb\u306e\u691c\u7d22<\/td><td>-<\/td><\/tr><tr><td>FolderCreate<\/td><td>\u30d5\u30a9\u30eb\u30c0\u306e\u4f5c\u6210<\/td><td>-<\/td><\/tr><tr><td>FolderDelete<\/td><td>\u30d5\u30a9\u30eb\u30c0\u306e\u524a\u9664<\/td><td>-<\/td><\/tr><tr><td>FileSeek<\/td><td>\u30dd\u30a4\u30f3\u30bf\u79fb\u52d5<\/td><td>\u5168\u30e2\u30fc\u30c9<\/td><\/tr><tr><td>FileTell<\/td><td>\u73fe\u5728\u4f4d\u7f6e\u306e\u53d6\u5f97<\/td><td>\u5168\u30e2\u30fc\u30c9<\/td><\/tr><tr><td>FileSize<\/td><td>\u30d5\u30a1\u30a4\u30eb\u30b5\u30a4\u30ba<\/td><td>\u5168\u30e2\u30fc\u30c9<\/td><\/tr><tr><td>FileFlush<\/td><td>\u30d0\u30c3\u30d5\u30a1\u306e\u30d5\u30e9\u30c3\u30b7\u30e5<\/td><td>\u5168\u30e2\u30fc\u30c9<\/td><\/tr><tr><td>FileIsEnding<\/td><td>\u30d5\u30a1\u30a4\u30eb\u7d42\u7aef\u691c\u51fa<\/td><td>\u5168\u30e2\u30fc\u30c9<\/td><\/tr><tr><td>FileIsLineEnding<\/td><td>\u884c\u7d42\u7aef\u691c\u51fa<\/td><td>CSV \/ TXT<\/td><\/tr><\/tbody><\/table>\n<\/figure>\n\n\n\n<ul class=\"wp-block-list is-style-check_list\">\n\n<li><strong>FILE_SHARE_READ<\/strong>\u3092\u4f7f\u3048\u3070\u3001EA\u52d5\u4f5c\u4e2d\u306b\u5916\u90e8\u30d7\u30ed\u30b0\u30e9\u30e0\u304b\u3089\u30ed\u30b0\u3092\u76e3\u8996\u3067\u304d\u308b<\/li>\n\n\n<li><strong>FILE_COMMON<\/strong>\u3067\u8907\u6570\u30bf\u30fc\u30df\u30ca\u30eb\u9593\u306e\u30c7\u30fc\u30bf\u5171\u6709\u304c\u53ef\u80fd<\/li>\n\n\n<li>\u8ffd\u8a18\u306f<strong>FILE_READ | FILE_WRITE + FileSeek(SEEK_END)<\/strong>\u306e\u7d44\u307f\u5408\u308f\u305b\u3067\u5b9f\u73fe<\/li>\n\n\n<li>\u30d0\u30a4\u30ca\u30ea\u4fdd\u5b58\u306f<strong>FileWriteArray<\/strong>\u304c\u6700\u3082\u9ad8\u901f\u3067\u30b3\u30f3\u30d1\u30af\u30c8<\/li>\n\n\n<li>\u30d5\u30a1\u30a4\u30eb\u3092\u958b\u3044\u305f\u3089<strong>\u5fc5\u305aFileClose()<\/strong>\u3067\u9589\u3058\u308b\uff08\u30ea\u30bd\u30fc\u30b9\u30ea\u30fc\u30af\u9632\u6b62\uff09<\/li>\n\n<\/ul>\n\n\n\n<p>\u30d7\u30ed\u304c\u958b\u767a\u3057\u305fEA\u3092\u304a\u63a2\u3057\u306e\u65b9\u306f \u2192 <a href=\"https:\/\/sys-tre.com\" target=\"_blank\" rel=\"noopener noreferrer\">\u30b7\u30b9\u30c8\u30ec.COM EA\u4e00\u89a7<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">MQL5\u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c \u3088\u304f\u3042\u308b\u8cea\u554f<\/h2>\n\n\n\n<div class=\"swell-block-faq\">\n<div class=\"swell-block-faq__item\"><h3 class=\"faq_q\">MQL5\u306e\u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u306e\u7279\u5fb4\u306f\uff1f<\/h3><div class=\"faq_a\"><p>MQL4\u3068\u540c\u3058FileOpen()\/FileWrite()\/FileClose()\u306b\u52a0\u3048\u3001FileFindFirst()\/FileFindNext()\u306b\u3088\u308b\u30d5\u30a1\u30a4\u30eb\u691c\u7d22\u3001FileIsExist()\u306b\u3088\u308b\u5b58\u5728\u78ba\u8a8d\u304c\u8ffd\u52a0\u3055\u308c\u3066\u3044\u307e\u3059\u3002FILE_COMMON\u30d5\u30e9\u30b0\u3067\u5168MT5\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u5171\u6709\u30d5\u30a9\u30eb\u30c0\u3078\u306e\u4fdd\u5b58\u3082\u53ef\u80fd\u3067\u3059\u3002<\/p><\/div><\/div>\n\n\n\n<div class=\"swell-block-faq__item\"><h3 class=\"faq_q\">MQL5\u3067CSV\u30d5\u30a1\u30a4\u30eb\u306b\u66f8\u304d\u8fbc\u3080\u65b9\u6cd5\u306f\uff1f<\/h3><div class=\"faq_a\"><p>FileOpen(filename,FILE_CSV|FILE_WRITE|FILE_ANSI,',')\u3067CSV\u30e2\u30fc\u30c9\u3067\u958b\u304d\u3001FileWrite(handle,col1,col2)\u3067\u884c\u3092\u66f8\u304d\u8fbc\u307f\u307e\u3059\u3002FILE_ANSI\u307e\u305f\u306fFILE_UNICODE\u306e\u30a8\u30f3\u30b3\u30fc\u30c9\u6307\u5b9a\u304c\u5fc5\u8981\u3067\u3059\u3002<\/p><\/div><\/div>\n\n\n\n<div class=\"swell-block-faq__item\"><h3 class=\"faq_q\">MQL5\u306e\u30d5\u30a1\u30a4\u30eb\u4fdd\u5b58\u5834\u6240\u306f\uff1f<\/h3><div class=\"faq_a\"><p>MQL5\/Files\u30d5\u30a9\u30eb\u30c0\uff08\u30c7\u30fc\u30bf\u30d5\u30a9\u30eb\u30c0\u5185\uff09\u304c\u6a19\u6e96\u306e\u4fdd\u5b58\u5148\u3067\u3059\u3002FILE_COMMON\u30d5\u30e9\u30b0\u3092\u4f7f\u3046\u3068\u5171\u901a\u30d5\u30a9\u30eb\u30c0\uff08\u5168MT5\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u5171\u6709\uff09\u306b\u4fdd\u5b58\u3067\u304d\u307e\u3059\u3002TerminalInfoString(TERMINAL_DATA_PATH)\u3067\u30c7\u30fc\u30bf\u30d5\u30a9\u30eb\u30c0\u306e\u30d1\u30b9\u3092\u53d6\u5f97\u3067\u304d\u307e\u3059\u3002<\/p><\/div><\/div>\n\n\n\n<div class=\"swell-block-faq__item\"><h3 class=\"faq_q\">MQL5\u3067\u30ed\u30b0\u30d5\u30a1\u30a4\u30eb\u3092\u5b9f\u88c5\u3059\u308b\u65b9\u6cd5\u306f\uff1f<\/h3><div class=\"faq_a\"><p>FileOpen()\u3067FILE_WRITE|FILE_TXT\u30e2\u30fc\u30c9\u3067\u958b\u304d\u3001FileWrite()\u3067\u30ed\u30b0\u884c\u3092\u66f8\u304d\u8fbc\u307f\u307e\u3059\u3002\u30bf\u30a4\u30e0\u30b9\u30bf\u30f3\u30d7\u306b\u306fTimeToString(TimeCurrent())\u3092\u4f7f\u7528\u3057\u307e\u3059\u3002\u8ffd\u8a18\u306fFILE_READ|FILE_WRITE\u3067\u30b7\u30fc\u30af\u3059\u308b\u304b\u3001FILE_WRITE\u306e\u307f\u3067\u6bce\u56de\u4e0a\u66f8\u304d\u3057\u307e\u3059\u3002<\/p><\/div><\/div>\n\n\n\n<div class=\"swell-block-faq__item\"><h3 class=\"faq_q\">MQL5\u306e\u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u30a8\u30e9\u30fc\u306e\u5bfe\u51e6\u6cd5\u306f\uff1f<\/h3><div class=\"faq_a\"><p>GetLastError()\u3067\u30a8\u30e9\u30fc\u30b3\u30fc\u30c9\u78ba\u8a8d\u3001FileIsExist()\u3067\u4e8b\u524d\u5b58\u5728\u30c1\u30a7\u30c3\u30af\u3001\u8fd4\u308a\u5024\u304cINVALID_HANDLE\u306e\u5834\u5408\u306f\u30a8\u30e9\u30fc\u51e6\u7406\u3092\u884c\u3044\u307e\u3059\u3002OnDeinit()\u3067FileClose()\u3092\u5fc5\u305a\u547c\u3093\u3067\u30cf\u30f3\u30c9\u30eb\u30ea\u30fc\u30af\u3092\u9632\u304e\u307e\u3059\u3002<\/p><\/div><\/div>\n\n\n\n<div class=\"swell-block-faq__item\"><h3 class=\"faq_q\">MQL5\u3067CSV\u30d5\u30a1\u30a4\u30eb\u3092\u8aad\u307f\u8fbc\u3080\u65b9\u6cd5\u306f\uff1f<\/h3><div class=\"faq_a\"><p>FileOpen(filename,FILE_CSV|FILE_READ|FILE_ANSI,',')\u3067\u958b\u304d\u3001FileIsEnding(handle)\u3067EOF\u3092\u78ba\u8a8d\u3057\u306a\u304c\u3089FileReadString()\u30671\u30d5\u30a3\u30fc\u30eb\u30c9\u305a\u3064\u8aad\u307f\u8fbc\u307f\u307e\u3059\u3002FileReadInteger()\/FileReadDouble()\u3067\u578b\u3092\u6307\u5b9a\u3057\u305f\u8aad\u307f\u8fbc\u307f\u3082\u53ef\u80fd\u3067\u3059\u3002<\/p><\/div><\/div>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">\u307e\u3068\u3081<\/h2>\n\n\n<div class=\"p-blogParts post_content\" data-partsID=\"59754\">\n\n  <style>\n   \n    .systrade-horizontal-banner {\n      width: 100%;\n      max-width: 800px;\n      margin: 20px auto;\n      background: linear-gradient(135deg, #F5F5F7, #E8E9EB);\n      border-radius: 12px;\n      overflow: hidden;\n      position: relative;\n      transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);\n      font-family: 'Noto Sans JP', sans-serif;\n      box-shadow: \n        0 10px 20px rgba(0, 0, 0, 0.1),\n        0 0 0 1px rgba(0, 0, 0, 0.03) inset;\n      display: flex;\n      flex-direction: row;\n      align-items: center;\n      height: auto;\n      min-height: 120px;\n      box-sizing: border-box;\n    }\n\n    .systrade-horizontal-banner::before {\n      content: '';\n      position: absolute;\n      top: 0;\n      left: 0;\n      right: 0;\n      bottom: 0;\n      background: \n        radial-gradient(circle at 0% 0%, rgba(255, 255, 255, 0.8) 0%, transparent 50%),\n        radial-gradient(circle at 100% 100%, rgba(255, 107, 0, 0.05) 0%, transparent 50%);\n      z-index: 1;\n    }\n\n    .systrade-horizontal-banner::after {\n      content: '';\n      position: absolute;\n      top: 0;\n      left: 0;\n      right: 0;\n      height: 2px;\n      background: linear-gradient(90deg, \n        transparent,\n        #FF6B00,\n        transparent\n      );\n      animation: borderGlow 3s ease-in-out infinite;\n      z-index: 2;\n    }\n\n    @keyframes borderGlow {\n      0%, 100% { opacity: 0.5; }\n      50% { opacity: 1; }\n    }\n\n    .systrade-horizontal-banner:hover {\n      transform: translateY(-2px);\n      box-shadow: \n        0 12px 25px rgba(0, 0, 0, 0.15),\n        0 0 0 1px rgba(0, 0, 0, 0.05) inset;\n    }\n\n    .systrade-horizontal-anchor {\n      display: flex;\n      width: 100%;\n      text-decoration: none;\n      color: inherit;\n      position: relative;\n      z-index: 2;\n      flex-wrap: wrap;\n    }\n\n    .systrade-horizontal-header {\n      width: 30%;\n      min-width: 150px;\n      position: relative;\n      display: flex;\n      flex-direction: column;\n      align-items: center;\n      justify-content: center;\n      padding: 12px;\n      background: rgba(255, 255, 255, 0.5);\n      border-radius: 10px;\n      border: 1px solid rgba(255, 255, 255, 0.8);\n      overflow: hidden;\n      backdrop-filter: blur(10px);\n      -webkit-backdrop-filter: blur(10px);\n      margin: 10px;\n      height: calc(100% - 20px);\n    }\n\n    .systrade-horizontal-header::before {\n      content: '';\n      position: absolute;\n      top: -50%;\n      left: -50%;\n      width: 200%;\n      height: 200%;\n      background: linear-gradient(\n        45deg,\n        transparent,\n        rgba(255, 255, 255, 0.4),\n        transparent\n      );\n      transform: rotate(45deg);\n      animation: headerGlow 4s ease-in-out infinite;\n    }\n\n    @keyframes headerGlow {\n      0% { transform: rotate(45deg) translateX(-100%); }\n      50% { transform: rotate(45deg) translateX(100%); }\n      100% { transform: rotate(45deg) translateX(100%); }\n    }\n\n    .systrade-horizontal-inner {\n      width: 100%;\n      position: relative;\n      z-index: 2;\n      text-align: center;\n    }\n\n    .systrade-horizontal-image {\n      height: 30px;\n      width: auto;\n      margin: 8px auto;\n      display: block;\n      filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.1));\n    }\n\n    .systrade-horizontal-title {\n      color: #333;\n      font-size: 0.9em;\n      font-weight: 900;\n      white-space: nowrap;\n      background: linear-gradient(90deg, #333, #FF6B00, #333);\n      background-size: 200% auto;\n      -webkit-background-clip: text;\n      -webkit-text-fill-color: transparent;\n      animation: titleFlow 3s linear infinite;\n      padding: 4px 0;\n    }\n\n    @keyframes titleFlow {\n      0% { background-position: 0% center; }\n      100% { background-position: 200% center; }\n    }\n\n    .systrade-horizontal-content {\n      display: flex;\n      flex: 1;\n      flex-direction: column;\n      justify-content: space-between;\n      padding: 12px;\n    }\n\n    .systrade-horizontal-list {\n      display: grid;\n      grid-template-columns: repeat(2, 1fr);\n      gap: 8px;\n      margin-bottom: 10px;\n    }\n\n    .systrade-horizontal-item {\n      background: rgba(255, 255, 255, 0.7);\n      padding: 8px 6px;\n      border-radius: 8px;\n      border: 1px solid rgba(255, 255, 255, 0.9);\n      text-align: center;\n      transition: all 0.3s ease;\n      position: relative;\n      overflow: hidden;\n    }\n\n    .systrade-horizontal-item:hover {\n      transform: translateY(-2px);\n      background: rgba(255, 107, 0, 0.05);\n      border-color: rgba(255, 107, 0, 0.2);\n      box-shadow: 0 4px 12px rgba(255, 107, 0, 0.1);\n    }\n\n    .systrade-horizontal-item::after {\n      content: '';\n      position: absolute;\n      top: -50%;\n      left: -50%;\n      width: 200%;\n      height: 200%;\n      background: linear-gradient(\n        45deg,\n        transparent,\n        rgba(255, 107, 0, 0.1),\n        transparent\n      );\n      transform: rotate(45deg);\n      animation: itemGlow 3s ease-in-out infinite;\n      opacity: 0;\n    }\n\n    .systrade-horizontal-item:hover::after {\n      opacity: 1;\n    }\n\n    @keyframes itemGlow {\n      0% { transform: rotate(45deg) translateX(-100%); }\n      100% { transform: rotate(45deg) translateX(100%); }\n    }\n\n    .systrade-horizontal-desc {\n      color: #333;\n      font-size: 0.7em;\n      font-weight: 700;\n      line-height: 1.3;\n      position: relative;\n      z-index: 1;\n    }\n\n    .systrade-horizontal-button {\n      background: linear-gradient(90deg, #FF6B00, #FF8534);\n      color: white;\n      padding: 10px;\n      border-radius: 8px;\n      font-weight: 900;\n      font-size: 0.85em;\n      text-align: center;\n      position: relative;\n      overflow: hidden;\n      text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);\n      transition: all 0.3s ease;\n      margin-top: auto;\n    }\n\n    .systrade-horizontal-button::before {\n      content: '';\n      position: absolute;\n      top: 0;\n      left: 0;\n      right: 0;\n      bottom: 0;\n      background: linear-gradient(90deg, \n        transparent,\n        rgba(255, 255, 255, 0.2),\n        transparent\n      );\n      transform: translateX(-100%);\n      animation: buttonGlow 3s ease-in-out infinite;\n    }\n\n    @keyframes buttonGlow {\n      0% { transform: translateX(-100%); }\n      50% { transform: translateX(100%); }\n      100% { transform: translateX(100%); }\n    }\n\n    .systrade-horizontal-button:hover {\n      transform: translateY(-2px);\n      box-shadow: 0 4px 12px rgba(255, 107, 0, 0.2);\n    }\n\n    \/* Responsive breakpoints *\/\n    @media (max-width: 768px) {\n      .systrade-horizontal-banner {\n        min-height: auto;\n      }\n      \n      .systrade-horizontal-header {\n        min-width: 120px;\n        padding: 8px;\n      }\n      \n      .systrade-horizontal-image {\n        height: 25px;\n      }\n      \n      .systrade-horizontal-title {\n        font-size: 0.8em;\n      }\n      \n      .systrade-horizontal-desc {\n        font-size: 0.65em;\n      }\n      \n      .systrade-horizontal-button {\n        font-size: 0.8em;\n        padding: 8px;\n      }\n    }\n    \n    @media (max-width: 600px) {\n      .systrade-horizontal-banner {\n        flex-direction: column;\n        min-height: auto;\n      }\n      \n      .systrade-horizontal-header {\n        width: calc(100% - 20px);\n        min-width: auto;\n        margin: 10px;\n      }\n      \n      .systrade-horizontal-content {\n        width: 100%;\n      }\n      \n      .systrade-horizontal-image {\n        height: 30px;\n        margin: 5px auto;\n      }\n      \n      .systrade-horizontal-title {\n        font-size: 0.85em;\n      }\n      \n      .systrade-horizontal-list {\n        grid-template-columns: repeat(2, 1fr);\n        gap: 6px;\n        margin-bottom: 8px;\n      }\n      \n      .systrade-horizontal-item {\n        padding: 6px 4px;\n      }\n      \n      .systrade-horizontal-desc {\n        font-size: 0.65em;\n      }\n      \n      .systrade-horizontal-button {\n        margin-top: 5px;\n      }\n    }\n\n    @media (max-width: 400px) {\n      .systrade-horizontal-list {\n        grid-template-columns: 1fr;\n      }\n      \n      .systrade-horizontal-item {\n        padding: 8px 6px;\n      }\n      \n      .systrade-horizontal-desc {\n        font-size: 0.7em;\n      }\n    }\n    \n    \/* Print media query *\/\n    @media print {\n      .systrade-horizontal-banner {\n        box-shadow: none;\n        border: 1px solid #ccc;\n      }\n      \n      .systrade-horizontal-banner::before,\n      .systrade-horizontal-banner::after,\n      .systrade-horizontal-header::before,\n      .systrade-horizontal-item::after,\n      .systrade-horizontal-button::before {\n        display: none;\n      }\n      \n      .systrade-horizontal-button {\n        background: #FF6B00;\n        text-shadow: none;\n      }\n    }\n  <\/style>\n\n  <div class=\"systrade-horizontal-banner\">\n    <a href=\"https:\/\/sys-tre.com\/\" class=\"systrade-horizontal-anchor\">\n      <div class=\"systrade-horizontal-header\">\n        <div class=\"systrade-horizontal-inner\">\n          <div class=\"systrade-horizontal-title\">FX\u81ea\u52d5\u58f2\u8cb7\uff08EA\uff09\u306a\u3089\uff01<\/div>\n          <img decoding=\"async\" src=\"https:\/\/sys-tre.com\/broker\/wp-content\/uploads\/2025\/01\/\u30b7\u30b9\u30c8\u30ec.COM_B-2.png\" alt=\"\u30b7\u30b9\u30c8\u30ec.COM \u516c\u5f0fCTA\u30ed\u30b4\" class=\"systrade-horizontal-image\">\n        <\/div>\n      <\/div>\n\n      <div class=\"systrade-horizontal-content\">\n        <div class=\"systrade-horizontal-list\">\n          <div class=\"systrade-horizontal-item\">\n            <div class=\"systrade-horizontal-desc\">\u5b9f\u7e3e\u306e\u3042\u308bEA\u304c\u7121\u6599\u3067\u4f7f\u3048\u308b\uff01<\/div>\n          <\/div>\n          <div class=\"systrade-horizontal-item\">\n            <div class=\"systrade-horizontal-desc\">\u6709\u6599\u7248\u3067\u53e3\u5ea7\u5236\u9650\u306a\u3057\uff01<\/div>\n          <\/div>\n          <div class=\"systrade-horizontal-item\">\n            <div class=\"systrade-horizontal-desc\">\u5168\u5546\u54c1\u30d5\u30a9\u30ef\u30fc\u30c9\u30c6\u30b9\u30c8\u516c\u958b\u4e2d\uff01<\/div>\n          <\/div>\n          <div class=\"systrade-horizontal-item\">\n            <div class=\"systrade-horizontal-desc\">\u521d\u5fc3\u8005\u3067\u3082\u5b89\u5fc3\u3057\u3066\u3054\u5229\u7528\u53ef\u80fd\uff01<\/div>\n          <\/div>\n        <\/div>\n\n        <div class=\"systrade-horizontal-button\">\n          \u4eca\u3059\u3050\u7121\u6599\u3067\u30b7\u30b9\u30c6\u30e0\u30c8\u30ec\u30fc\u30c9\u3092\u59cb\u3081\u308b\uff01\n        <\/div>\n      <\/div>\n    <\/a>\n  <\/div>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\">MQL5\u30ea\u30d5\u30a1\u30ec\u30f3\u30b9 \u95a2\u9023\u8a18\u4e8b<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/sys-tre.com\/forexguide\/mql5-trade-functions\/\">MQL5 \u53d6\u5f15\u95a2\u6570<\/a>\uff1aCTrade\u30fbOrderSend<\/li>\n<li><a href=\"https:\/\/sys-tre.com\/forexguide\/mql5-indicator-functions\/\">MQL5 \u30a4\u30f3\u30b8\u30b1\u30fc\u30bf\u30fc\u95a2\u6570<\/a>\uff1aiMA\u30fbCopyBuffer<\/li>\n<li>MQL5 \u53e3\u5ea7\u30fb\u30de\u30fc\u30b1\u30c3\u30c8\u60c5\u5831\uff1a\u8a3c\u62e0\u91d1\u8a08\u7b97<\/li>\n<li><a href=\"https:\/\/sys-tre.com\/forexguide\/mql5-event-handlers\/\">MQL5 \u30a4\u30d9\u30f3\u30c8\u30cf\u30f3\u30c9\u30e9<\/a>\uff1aOnTrade\u30fbOnTimer<\/li>\n<li><a href=\"https:\/\/sys-tre.com\/forexguide\/mql5-error-guide\/\">MQL5 \u30a8\u30e9\u30fc\u30ac\u30a4\u30c9<\/a>\uff1a\u30c7\u30d0\u30c3\u30b0\u624b\u6cd5<\/li>\n<li>MQL5 \u6642\u9593\u30fb\u65e5\u4ed8\u95a2\u6570\uff1aMqlDateTime<\/li>\n<li><a href=\"https:\/\/sys-tre.com\/forexguide\/ea-howto\/\">EA\u59cb\u3081\u65b9\u30ac\u30a4\u30c9<\/a>\uff1aMT5\u3078\u306eEA\u8a2d\u5b9a\u624b\u9806<\/li>\n<\/ul>\n\n\n\n\n\n\n\n<script type=\"application\/ld+json\">\n{\"@context\":\"https:\/\/schema.org\",\"@type\":\"FAQPage\",\"mainEntity\": [\n    {\"@type\":\"Question\",\"name\":\"MQL5\u306e\u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u306e\u7279\u5fb4\u306f\uff1f\",\"acceptedAnswer\": {\"@type\":\"Answer\",\"text\":\"MQL4\u3068\u540c\u3058API + FileFindFirst()\/FileFindNext()\u3067\u306e\u30d5\u30a1\u30a4\u30eb\u691c\u7d22\u3001FILE_COMMON\u30d5\u30e9\u30b0\u3067\u5171\u6709\u30d5\u30a9\u30eb\u30c0\u3078\u306e\u4fdd\u5b58\u304c\u8ffd\u52a0\u3055\u308c\u307e\u3057\u305f\u3002\"}},\n    {\"@type\":\"Question\",\"name\":\"MQL5\u3067CSV\u30d5\u30a1\u30a4\u30eb\u306b\u66f8\u304d\u8fbc\u3080\u65b9\u6cd5\u306f\uff1f\",\"acceptedAnswer\": {\"@type\":\"Answer\",\"text\":\"FileOpen(filename,FILE_CSV|FILE_WRITE|FILE_ANSI,\\\",\\\")\u3067\u958b\u304d\u3001FileWrite(handle,col1,col2)\u3067\u66f8\u304d\u8fbc\u307f\u307e\u3059\u3002\u30a8\u30f3\u30b3\u30fc\u30c9\u6307\u5b9a\u304c\u5fc5\u9808\u3067\u3059\u3002\"}},\n    {\"@type\":\"Question\",\"name\":\"MQL5\u306e\u30d5\u30a1\u30a4\u30eb\u4fdd\u5b58\u5834\u6240\u306f\uff1f\",\"acceptedAnswer\": {\"@type\":\"Answer\",\"text\":\"MQL5\/Files\u30d5\u30a9\u30eb\u30c0\u304c\u6a19\u6e96\u3067\u3059\u3002FILE_COMMON\u30d5\u30e9\u30b0\u3067\u5168MT5\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u5171\u6709\u30d5\u30a9\u30eb\u30c0\u306b\u4fdd\u5b58\u3067\u304d\u307e\u3059\u3002\"}},\n    {\"@type\":\"Question\",\"name\":\"MQL5\u3067\u30ed\u30b0\u30d5\u30a1\u30a4\u30eb\u3092\u5b9f\u88c5\u3059\u308b\u65b9\u6cd5\u306f\uff1f\",\"acceptedAnswer\": {\"@type\":\"Answer\",\"text\":\"FILE_WRITE|FILE_TXT\u3067\u958b\u304d\u3001FileWrite()\u3067\u30ed\u30b0\u884c\u3092\u66f8\u304d\u8fbc\u307f\u307e\u3059\u3002\u30bf\u30a4\u30e0\u30b9\u30bf\u30f3\u30d7\u306fTimeToString(TimeCurrent())\u3092\u4f7f\u3044\u307e\u3059\u3002\"}},\n    {\"@type\":\"Question\",\"name\":\"MQL5\u306e\u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u30a8\u30e9\u30fc\u306e\u5bfe\u51e6\u6cd5\u306f\uff1f\",\"acceptedAnswer\": {\"@type\":\"Answer\",\"text\":\"GetLastError()\u3067\u30b3\u30fc\u30c9\u78ba\u8a8d\u3001FileIsExist()\u3067\u4e8b\u524d\u5b58\u5728\u30c1\u30a7\u30c3\u30af\u3002OnDeinit()\u3067FileClose()\u3092\u5fc5\u305a\u547c\u3093\u3067\u30cf\u30f3\u30c9\u30eb\u30ea\u30fc\u30af\u3092\u9632\u304e\u307e\u3059\u3002\"}},\n    {\"@type\":\"Question\",\"name\":\"MQL5\u3067CSV\u30d5\u30a1\u30a4\u30eb\u3092\u8aad\u307f\u8fbc\u3080\u65b9\u6cd5\u306f\uff1f\",\"acceptedAnswer\": {\"@type\":\"Answer\",\"text\":\"FILE_CSV|FILE_READ|FILE_ANSI\u3067\u958b\u304d\u3001FileIsEnding()\u3067EOF\u78ba\u8a8d\u3057\u306a\u304c\u3089FileReadString()\u3067\u8aad\u307f\u8fbc\u307f\u307e\u3059\u3002\u578b\u6307\u5b9a\u306eFileReadInteger()\/FileReadDouble()\u3082\u4f7f\u3048\u307e\u3059\u3002\"}}\n]}\n<\/script>\n\n\n<div class=\"swell-block-postLink\">\t\t\t<div class=\"p-blogCard -external\" data-type=\"type1\" data-onclick=\"clickLink\">\n\t\t\t\t<div class=\"p-blogCard__inner\">\n\t\t\t\t\t<span class=\"p-blogCard__caption\">\u95a2\u9023\u8a18\u4e8b<\/span>\n\t\t\t\t\t<div class=\"p-blogCard__thumb c-postThumb\"><figure class=\"c-postThumb__figure\"><img decoding=\"async\" src=\"https:\/\/sys-tre.com\/forexguide\/wp-content\/uploads\/2026\/06\/forexguide-mqlref-eyecatch.png\" alt=\"\" class=\"c-postThumb__img u-obf-cover\" width=\"320\" height=\"180\"><\/figure><\/div>\t\t\t\t\t<div class=\"p-blogCard__body\">\n\t\t\t\t\t\t<a class=\"p-blogCard__title\" href=\"https:\/\/sys-tre.com\/forexguide\/mql4-indicator-functions\/\" target=\"_blank\" rel=\"noopener noreferrer\">MQL4 \u30a4\u30f3\u30b8\u30b1\u30fc\u30bf\u30fc\u95a2\u6570\u30ea\u30d5\u30a1\u30ec\u30f3\u30b9\uff5ciMA\u30fbiRSI\u89e3\u8aac<\/a>\n\t\t\t\t\t\t<span class=\"p-blogCard__excerpt\">MQL4\u306e\u30a4\u30f3\u30b8\u30b1\u30fc\u30bf\u30fc\u95a2\u6570\uff08iMA\u30fbiRSI\u30fbiBands\u30fbiMACD\u30fbiCustom\uff09\u306e\u4f7f\u3044\u65b9\u3092\u5b8c\u5168\u89e3\u8aac\u3002\u30c6\u30af\u30cb\u30ab\u30eb\u6307\u6a19\u5024\u306e\u53d6\u5f97\u65b9\u6cd5\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002<\/span>\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\n<div class=\"swell-block-postLink\">\t\t\t<div class=\"p-blogCard -external\" data-type=\"type1\" data-onclick=\"clickLink\">\n\t\t\t\t<div class=\"p-blogCard__inner\">\n\t\t\t\t\t<span class=\"p-blogCard__caption\">\u95a2\u9023\u8a18\u4e8b<\/span>\n\t\t\t\t\t<div class=\"p-blogCard__thumb c-postThumb\"><figure class=\"c-postThumb__figure\"><img decoding=\"async\" src=\"https:\/\/sys-tre.com\/forexguide\/wp-content\/uploads\/2026\/06\/forexguide-mqlref-eyecatch.png\" alt=\"\" class=\"c-postThumb__img u-obf-cover\" width=\"320\" height=\"180\"><\/figure><\/div>\t\t\t\t\t<div class=\"p-blogCard__body\">\n\t\t\t\t\t\t<a class=\"p-blogCard__title\" href=\"https:\/\/sys-tre.com\/forexguide\/mql4-account-market-info\/\" target=\"_blank\" rel=\"noopener noreferrer\">MQL4 \u53e3\u5ea7\u30fb\u30de\u30fc\u30b1\u30c3\u30c8\u60c5\u5831\u30ea\u30d5\u30a1\u30ec\u30f3\u30b9\uff5c\u30ed\u30c3\u30c8\u8a08\u7b97<\/a>\n\t\t\t\t\t\t<span class=\"p-blogCard__excerpt\">MQL4\u306e\u53e3\u5ea7\u60c5\u5831\u95a2\u6570\uff08AccountBalance\u30fbAccountEquity\uff09\u3068MarketInfo()\u306e\u4f7f\u3044\u65b9\u3092\u89e3\u8aac\u3002\u30ea\u30b9\u30af\u7ba1\u7406\u3068\u30ed\u30c3\u30c8\u8a08\u7b97\u306e\u5b9f\u88c5\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002<\/span>\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\n<div class=\"swell-block-postLink\">\t\t\t<div class=\"p-blogCard -external\" data-type=\"type1\" data-onclick=\"clickLink\">\n\t\t\t\t<div class=\"p-blogCard__inner\">\n\t\t\t\t\t<span class=\"p-blogCard__caption\">\u95a2\u9023\u8a18\u4e8b<\/span>\n\t\t\t\t\t<div class=\"p-blogCard__thumb c-postThumb\"><figure class=\"c-postThumb__figure\"><img decoding=\"async\" src=\"https:\/\/sys-tre.com\/forexguide\/wp-content\/uploads\/2026\/06\/forexguide-mqlref-eyecatch.png\" alt=\"\" class=\"c-postThumb__img u-obf-cover\" width=\"320\" height=\"180\"><\/figure><\/div>\t\t\t\t\t<div class=\"p-blogCard__body\">\n\t\t\t\t\t\t<a class=\"p-blogCard__title\" href=\"https:\/\/sys-tre.com\/forexguide\/mql5-error-guide\/\" target=\"_blank\" rel=\"noopener noreferrer\">MQL5 \u30a8\u30e9\u30fc\u5b8c\u5168\u30ac\u30a4\u30c9\uff5c\u30b3\u30fc\u30c9\u4e00\u89a7\u30fb\u539f\u56e0\u30fb\u30c7\u30d0\u30c3\u30b0<\/a>\n\t\t\t\t\t\t<span class=\"p-blogCard__excerpt\">MQL5\u306e\u30a8\u30e9\u30fc\u30b3\u30fc\u30c9\u4e00\u89a7\u30fbGetLastError()\u306e\u4f7f\u3044\u65b9\u30fb\u30c7\u30d0\u30c3\u30b0\u624b\u6cd5\u3092\u89e3\u8aac\u3002\u53d6\u5f15\u30a8\u30e9\u30fc\u306e\u539f\u56e0\u3068\u89e3\u6c7a\u6cd5\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002<\/span>\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\n<div class=\"swell-block-postLink\">\t\t\t<div class=\"p-blogCard -external\" data-type=\"type1\" data-onclick=\"clickLink\">\n\t\t\t\t<div class=\"p-blogCard__inner\">\n\t\t\t\t\t<span class=\"p-blogCard__caption\">\u95a2\u9023\u8a18\u4e8b<\/span>\n\t\t\t\t\t<div class=\"p-blogCard__thumb c-postThumb\"><figure class=\"c-postThumb__figure\"><img decoding=\"async\" src=\"https:\/\/sys-tre.com\/forexguide\/wp-content\/uploads\/2026\/06\/forexguide-mqlref-eyecatch.png\" alt=\"\" class=\"c-postThumb__img u-obf-cover\" width=\"320\" height=\"180\"><\/figure><\/div>\t\t\t\t\t<div class=\"p-blogCard__body\">\n\t\t\t\t\t\t<a class=\"p-blogCard__title\" href=\"https:\/\/sys-tre.com\/forexguide\/mql5-math-functions\/\" target=\"_blank\" rel=\"noopener noreferrer\">MQL5 \u6570\u5b66\u95a2\u6570\u30ac\u30a4\u30c9\uff5cNormalizeDouble\u30fb\u7d71\u8a08\u8a08\u7b97<\/a>\n\t\t\t\t\t\t<span class=\"p-blogCard__excerpt\">MQL5\u306e\u6570\u5b66\u95a2\u6570\uff08NormalizeDouble\u30fbMathRound\u30fbMathMax\u30fb\u7d71\u8a08\u8a08\u7b97\uff09\u306e\u4f7f\u3044\u65b9\u3092\u89e3\u8aac\u3002FX\u306e\u4fa1\u683c\u8a08\u7b97\u306b\u5fc5\u9808\u306e\u6b63\u898f\u5316\u51e6\u7406\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002<\/span>\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\n<div class=\"swell-block-postLink\">\t\t\t<div class=\"p-blogCard -external\" data-type=\"type1\" data-onclick=\"clickLink\">\n\t\t\t\t<div class=\"p-blogCard__inner\">\n\t\t\t\t\t<span class=\"p-blogCard__caption\">\u95a2\u9023\u8a18\u4e8b<\/span>\n\t\t\t\t\t<div class=\"p-blogCard__thumb c-postThumb\"><figure class=\"c-postThumb__figure\"><img decoding=\"async\" src=\"https:\/\/sys-tre.com\/forexguide\/wp-content\/uploads\/2026\/06\/forexguide-mqlref-eyecatch.png\" alt=\"\" class=\"c-postThumb__img u-obf-cover\" width=\"320\" height=\"180\"><\/figure><\/div>\t\t\t\t\t<div class=\"p-blogCard__body\">\n\t\t\t\t\t\t<a class=\"p-blogCard__title\" href=\"https:\/\/sys-tre.com\/forexguide\/mql5-chart-operations\/\" target=\"_blank\" rel=\"noopener noreferrer\">MQL5 \u30c1\u30e3\u30fc\u30c8\u64cd\u4f5c\u30ac\u30a4\u30c9\uff5cChartOpen\u30fb\u30b9\u30af\u30ea\u30fc\u30f3\u30b7\u30e7\u30c3\u30c8<\/a>\n\t\t\t\t\t\t<span class=\"p-blogCard__excerpt\">MQL5\u306e\u30c1\u30e3\u30fc\u30c8\u64cd\u4f5c\u95a2\u6570\uff08ChartOpen\u30fbChartSetInteger\u30fb\u30b9\u30af\u30ea\u30fc\u30f3\u30b7\u30e7\u30c3\u30c8\u30fb\u5ea7\u6a19\u5909\u63db\uff09\u306e\u4f7f\u3044\u65b9\u3092\u89e3\u8aac\u3002\u52d5\u7684\u30c1\u30e3\u30fc\u30c8\u5236\u5fa1\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002<\/span>\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\n\n<address class=\"author author-box\">\u30b7\u30b9\u30c8\u30ec.COM\u7de8\u96c6\u90e8\uff5c200\u7a2e\u985e\u4ee5\u4e0a\u306eEA\u3092\u30d5\u30a9\u30ef\u30fc\u30c9\u8a08\u6e2c\u3059\u308b\u904b\u55b63\u5e74\u306e\u691c\u8a3c\u30e1\u30c7\u30a3\u30a2\u3002MetaTrader (MT4\/MT5) \u3092\u5b9f\u904b\u7528\u3057\u3066\u304d\u305f\u7de8\u96c6\u90e8\u304c\u76e3\u4fee\u30fb\u57f7\u7b46\u3057\u3066\u3044\u307e\u3059\u3002<\/address>\n","protected":false},"excerpt":{"rendered":"<p>MQL5 \u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u95a2\u6570\u3092\u5b8c\u5168\u7db2\u7f85\u3002FileOpen\u30fbFileWrite\u30fbFileRead\u306a\u3069\u3001EA\u958b\u767a\u3067\u4f7f\u3046\u3059\u3079\u3066\u306e\u30d5\u30a1\u30a4\u30eb\u95a2\u6570\u3092\u30b3\u30fc\u30c9\u4ed8\u304d\u3067\u89e3\u8aac\u3057\u307e\u3059\u3002CSV\u53d6\u5f15\u30ed\u30b0\u306e\u8a18\u9332\u3001\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306e\u8aad\u307f\u66f8\u304d\u3001EA\u9593\u901a\u4fe1\u3001\u30c7\u30fc [&hellip;]<\/p>\n","protected":false},"author":686,"featured_media":71194,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_yoast_wpseo_focuskw":"MQL5 \u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c","_yoast_wpseo_title":"MQL5 \u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u30ac\u30a4\u30c9\uff5cFileOpen\u30fbCSV\u30fb\u30ed\u30b0\u5b9f\u88c5","_yoast_wpseo_metadesc":"MQL5\u306e\u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u95a2\u6570\uff08FileOpen\u30fbFileWrite\u30fbCSV\u8aad\u307f\u66f8\u304d\uff09\u306e\u4f7f\u3044\u65b9\u3092\u89e3\u8aac\u3002\u53d6\u5f15\u30ed\u30b0\u3084\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306e\u5b9f\u88c5\u65b9\u6cd5\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002","swell_btn_cv_data":"","footnotes":""},"categories":[301],"tags":[303],"class_list":["post-65662","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-mql-reference","tag-mql5"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>MQL5 \u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u30ac\u30a4\u30c9\uff5cFileOpen\u30fbCSV\u30fb\u30ed\u30b0\u5b9f\u88c5<\/title>\n<meta name=\"description\" content=\"MQL5\u306e\u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u95a2\u6570\uff08FileOpen\u30fbFileWrite\u30fbCSV\u8aad\u307f\u66f8\u304d\uff09\u306e\u4f7f\u3044\u65b9\u3092\u89e3\u8aac\u3002\u53d6\u5f15\u30ed\u30b0\u3084\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306e\u5b9f\u88c5\u65b9\u6cd5\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/sys-tre.com\/forexguide\/mql5-file-operations\/\" \/>\n<meta property=\"og:locale\" content=\"ja_JP\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"MQL5 \u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u30ac\u30a4\u30c9\uff5cFileOpen\u30fbCSV\u30fb\u30ed\u30b0\u5b9f\u88c5\" \/>\n<meta property=\"og:description\" content=\"MQL5\u306e\u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u95a2\u6570\uff08FileOpen\u30fbFileWrite\u30fbCSV\u8aad\u307f\u66f8\u304d\uff09\u306e\u4f7f\u3044\u65b9\u3092\u89e3\u8aac\u3002\u53d6\u5f15\u30ed\u30b0\u3084\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306e\u5b9f\u88c5\u65b9\u6cd5\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002\" \/>\n<meta property=\"og:url\" content=\"https:\/\/sys-tre.com\/forexguide\/mql5-file-operations\/\" \/>\n<meta property=\"og:site_name\" content=\"Forex Guide\" \/>\n<meta property=\"article:published_time\" content=\"2026-03-14T18:27:04+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-04-14T15:53:26+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/sys-tre.com\/forexguide\/wp-content\/uploads\/2026\/06\/forexguide-mqlref-eyecatch.png\" \/>\n\t<meta property=\"og:image:width\" content=\"2400\" \/>\n\t<meta property=\"og:image:height\" content=\"1260\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"\u30b7\u30b9\u30c8\u30ec.COM\u7de8\u96c6\u90e8\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/sys-tre.com\/forexguide\/wp-content\/uploads\/2026\/06\/forexguide-mqlref-eyecatch.png\" \/>\n<meta name=\"twitter:creator\" content=\"@https:\/\/twitter.com\/systre_COM\" \/>\n<meta name=\"twitter:site\" content=\"@systre_COM\" \/>\n<meta name=\"twitter:label1\" content=\"\u57f7\u7b46\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"\u30b7\u30b9\u30c8\u30ec.COM\u7de8\u96c6\u90e8\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u63a8\u5b9a\u8aad\u307f\u53d6\u308a\u6642\u9593\" \/>\n\t<meta name=\"twitter:data2\" content=\"8\u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/mql5-file-operations\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/mql5-file-operations\\\/\"},\"author\":{\"name\":\"\u30b7\u30b9\u30c8\u30ec.COM\u7de8\u96c6\u90e8\",\"@id\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/#\\\/schema\\\/person\\\/6d4b91f175c62b272d48ff74ffe237c1\"},\"headline\":\"MQL5 \u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c \u5b8c\u5168\u30ac\u30a4\u30c9\uff5cFileOpen\u30fbFileWrite\u30fbCSV\u8aad\u307f\u66f8\u304d\u30fb\u30ed\u30b0\u8a18\u9332\u306e\u5b9f\u88c5\",\"datePublished\":\"2026-03-14T18:27:04+00:00\",\"dateModified\":\"2026-04-14T15:53:26+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/mql5-file-operations\\\/\"},\"wordCount\":262,\"publisher\":{\"@id\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/mql5-file-operations\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/forexguide-mqlref-eyecatch.png\",\"keywords\":[\"MQL5\"],\"articleSection\":[\"MQL\u30ea\u30d5\u30a1\u30ec\u30f3\u30b9\"],\"inLanguage\":\"ja\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/mql5-file-operations\\\/\",\"url\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/mql5-file-operations\\\/\",\"name\":\"MQL5 \u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u30ac\u30a4\u30c9\uff5cFileOpen\u30fbCSV\u30fb\u30ed\u30b0\u5b9f\u88c5\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/mql5-file-operations\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/mql5-file-operations\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/forexguide-mqlref-eyecatch.png\",\"datePublished\":\"2026-03-14T18:27:04+00:00\",\"dateModified\":\"2026-04-14T15:53:26+00:00\",\"description\":\"MQL5\u306e\u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u95a2\u6570\uff08FileOpen\u30fbFileWrite\u30fbCSV\u8aad\u307f\u66f8\u304d\uff09\u306e\u4f7f\u3044\u65b9\u3092\u89e3\u8aac\u3002\u53d6\u5f15\u30ed\u30b0\u3084\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306e\u5b9f\u88c5\u65b9\u6cd5\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/mql5-file-operations\\\/#breadcrumb\"},\"inLanguage\":\"ja\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/mql5-file-operations\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ja\",\"@id\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/mql5-file-operations\\\/#primaryimage\",\"url\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/forexguide-mqlref-eyecatch.png\",\"contentUrl\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/forexguide-mqlref-eyecatch.png\",\"width\":2400,\"height\":1260},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/mql5-file-operations\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u30db\u30fc\u30e0\",\"item\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"MQL\u30ea\u30d5\u30a1\u30ec\u30f3\u30b9\",\"item\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/category\\\/mql-reference\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"MQL5 \u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c \u5b8c\u5168\u30ac\u30a4\u30c9\uff5cFileOpen\u30fbFileWrite\u30fbCSV\u8aad\u307f\u66f8\u304d\u30fb\u30ed\u30b0\u8a18\u9332\u306e\u5b9f\u88c5\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/#website\",\"url\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/\",\"name\":\"\u30b7\u30b9\u30c8\u30ec.COM\",\"description\":\"\u30b7\u30b9\u30c8\u30ec.COM ForexGuide\uff5cFX\u81ea\u52d5\u58f2\u8cb7\u306b\u95a2\u3059\u308b\u304a\u5f79\u7acb\u3061\u60c5\u5831\u3092\u66f4\u65b0\u4e2d\uff01\",\"publisher\":{\"@id\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/#organization\"},\"alternateName\":\"\u30b7\u30b9\u30c8\u30ecCOM\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ja\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/#organization\",\"name\":\"\u30b7\u30b9\u30c8\u30ec.COM\",\"alternateName\":\"\u30b7\u30b9\u30c8\u30ecCOM\",\"url\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ja\",\"@id\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/wp-content\\\/uploads\\\/2023\\\/05\\\/\u30b7\u30b9\u30c8\u30ec.COM_\u30ed\u30b4-1.svg\",\"contentUrl\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/wp-content\\\/uploads\\\/2023\\\/05\\\/\u30b7\u30b9\u30c8\u30ec.COM_\u30ed\u30b4-1.svg\",\"width\":500,\"height\":500,\"caption\":\"\u30b7\u30b9\u30c8\u30ec.COM\"},\"image\":{\"@id\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/x.com\\\/systre_COM\",\"https:\\\/\\\/www.youtube.com\\\/@systre_com\",\"https:\\\/\\\/www.facebook.com\\\/people\\\/%E3%82%B7%E3%82%B9%E3%83%88%E3%83%ACcom\\\/61587699411751\\\/\",\"https:\\\/\\\/www.instagram.com\\\/systre_com\\\/\",\"https:\\\/\\\/www.tiktok.com\\\/@sys_tre.com\"],\"description\":\"FX\u81ea\u52d5\u58f2\u8cb7EA\uff08Expert Advisor\uff09200\u672c\u4ee5\u4e0a\u3092\u7121\u6599\u63d0\u4f9b\u3059\u308b\u30de\u30fc\u30b1\u30c3\u30c8\u30d7\u30ec\u30a4\u30b9\u3002\u5168EA\u306e\u30d5\u30a9\u30ef\u30fc\u30c9\u30c6\u30b9\u30c8\u30fb\u30ea\u30a2\u30eb\u53e3\u5ea7\u904b\u7528\u30c7\u30fc\u30bf\u3092\u516c\u958b\u3002MT4\\\/MT5\u5bfe\u5fdc\u3002\",\"foundingDate\":\"2023\",\"knowsAbout\":[\"FX\u81ea\u52d5\u58f2\u8cb7\",\"Expert Advisor\",\"MetaTrader\",\"\u30c6\u30af\u30cb\u30ab\u30eb\u5206\u6790\",\"\u30b7\u30b9\u30c6\u30e0\u30c8\u30ec\u30fc\u30c9\"],\"contactPoint\":{\"@type\":\"ContactPoint\",\"contactType\":\"customer service\",\"url\":\"https:\\\/\\\/sys-tre.com\\\/contact-us\\\/\",\"availableLanguage\":[\"Japanese\",\"English\"]},\"legalName\":\"Attempia Ltd\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/#\\\/schema\\\/person\\\/6d4b91f175c62b272d48ff74ffe237c1\",\"name\":\"\u30b7\u30b9\u30c8\u30ec.COM\u7de8\u96c6\u90e8\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ja\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/b6ee0bfaa0b0a8c1c9af71dab7cf7fce04ac8f81a3d6bc3155344b588e526631?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/b6ee0bfaa0b0a8c1c9af71dab7cf7fce04ac8f81a3d6bc3155344b588e526631?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/b6ee0bfaa0b0a8c1c9af71dab7cf7fce04ac8f81a3d6bc3155344b588e526631?s=96&d=mm&r=g\",\"caption\":\"\u30b7\u30b9\u30c8\u30ec.COM\u7de8\u96c6\u90e8\"},\"description\":\"\u30b7\u30b9\u30c8\u30ec.COM\u7de8\u96c6\u90e8\u306f\u3001FX\u81ea\u52d5\u58f2\u8cb7\uff08EA\uff09\u3068\u30c6\u30af\u30cb\u30ab\u30eb\u5206\u6790\u3092\u5c02\u9580\u3068\u3059\u308b\u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u30e1\u30c7\u30a3\u30a2\u300c\u30b7\u30b9\u30c8\u30ec.COM\u300d\u306e\u7de8\u96c6\u30c1\u30fc\u30e0\u3067\u3059\u3002200\u672c\u4ee5\u4e0a\u306eEA\u306e\u30d5\u30a9\u30ef\u30fc\u30c9\u30c6\u30b9\u30c8\u7d50\u679c\u3092\u516c\u958b\u3057\u3001\u5b9f\u969b\u306e\u904b\u7528\u30c7\u30fc\u30bf\u306b\u57fa\u3065\u3044\u305f\u5ba2\u89b3\u7684\u306a\u60c5\u5831\u3092\u767a\u4fe1\u3057\u3066\u3044\u307e\u3059\u3002\u8a18\u4e8b\u306e\u57f7\u7b46\u30fb\u76e3\u4fee\u306fMetaTrader\uff08MT4\\\/MT5\uff09\u3067\u306e\u5b9f\u904b\u7528\u7d4c\u9a13\u3092\u6301\u3064\u30b9\u30bf\u30c3\u30d5\u304c\u62c5\u5f53\u3002\",\"sameAs\":[\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/about\\\/\",\"https:\\\/\\\/x.com\\\/systre_COM\"],\"jobTitle\":\"FX\u81ea\u52d5\u58f2\u8cb7\u30fb\u30c6\u30af\u30cb\u30ab\u30eb\u5206\u6790 \u7de8\u96c6\u30c1\u30fc\u30e0\",\"knowsAbout\":[\"FX\u81ea\u52d5\u58f2\u8cb7\",\"Expert Advisor (EA)\",\"\u30c6\u30af\u30cb\u30ab\u30eb\u5206\u6790\",\"MetaTrader 4\",\"MetaTrader 5\",\"MQL4\",\"MQL5\",\"\u30ea\u30b9\u30af\u7ba1\u7406\",\"\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u30c8\u30ec\u30fc\u30c9\"],\"url\":\"https:\\\/\\\/sys-tre.com\\\/forexguide\\\/about\\\/\",\"worksFor\":{\"@type\":\"Organization\",\"name\":\"\u30b7\u30b9\u30c8\u30ec.COM\",\"url\":\"https:\\\/\\\/sys-tre.com\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"MQL5 \u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u30ac\u30a4\u30c9\uff5cFileOpen\u30fbCSV\u30fb\u30ed\u30b0\u5b9f\u88c5","description":"MQL5\u306e\u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u95a2\u6570\uff08FileOpen\u30fbFileWrite\u30fbCSV\u8aad\u307f\u66f8\u304d\uff09\u306e\u4f7f\u3044\u65b9\u3092\u89e3\u8aac\u3002\u53d6\u5f15\u30ed\u30b0\u3084\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306e\u5b9f\u88c5\u65b9\u6cd5\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/sys-tre.com\/forexguide\/mql5-file-operations\/","og_locale":"ja_JP","og_type":"article","og_title":"MQL5 \u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u30ac\u30a4\u30c9\uff5cFileOpen\u30fbCSV\u30fb\u30ed\u30b0\u5b9f\u88c5","og_description":"MQL5\u306e\u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u95a2\u6570\uff08FileOpen\u30fbFileWrite\u30fbCSV\u8aad\u307f\u66f8\u304d\uff09\u306e\u4f7f\u3044\u65b9\u3092\u89e3\u8aac\u3002\u53d6\u5f15\u30ed\u30b0\u3084\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306e\u5b9f\u88c5\u65b9\u6cd5\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002","og_url":"https:\/\/sys-tre.com\/forexguide\/mql5-file-operations\/","og_site_name":"Forex Guide","article_published_time":"2026-03-14T18:27:04+00:00","article_modified_time":"2026-04-14T15:53:26+00:00","og_image":[{"width":2400,"height":1260,"url":"https:\/\/sys-tre.com\/forexguide\/wp-content\/uploads\/2026\/06\/forexguide-mqlref-eyecatch.png","type":"image\/png"}],"author":"\u30b7\u30b9\u30c8\u30ec.COM\u7de8\u96c6\u90e8","twitter_card":"summary_large_image","twitter_image":"https:\/\/sys-tre.com\/forexguide\/wp-content\/uploads\/2026\/06\/forexguide-mqlref-eyecatch.png","twitter_creator":"@https:\/\/twitter.com\/systre_COM","twitter_site":"@systre_COM","twitter_misc":{"\u57f7\u7b46\u8005":"\u30b7\u30b9\u30c8\u30ec.COM\u7de8\u96c6\u90e8","\u63a8\u5b9a\u8aad\u307f\u53d6\u308a\u6642\u9593":"8\u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/sys-tre.com\/forexguide\/mql5-file-operations\/#article","isPartOf":{"@id":"https:\/\/sys-tre.com\/forexguide\/mql5-file-operations\/"},"author":{"name":"\u30b7\u30b9\u30c8\u30ec.COM\u7de8\u96c6\u90e8","@id":"https:\/\/sys-tre.com\/forexguide\/#\/schema\/person\/6d4b91f175c62b272d48ff74ffe237c1"},"headline":"MQL5 \u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c \u5b8c\u5168\u30ac\u30a4\u30c9\uff5cFileOpen\u30fbFileWrite\u30fbCSV\u8aad\u307f\u66f8\u304d\u30fb\u30ed\u30b0\u8a18\u9332\u306e\u5b9f\u88c5","datePublished":"2026-03-14T18:27:04+00:00","dateModified":"2026-04-14T15:53:26+00:00","mainEntityOfPage":{"@id":"https:\/\/sys-tre.com\/forexguide\/mql5-file-operations\/"},"wordCount":262,"publisher":{"@id":"https:\/\/sys-tre.com\/forexguide\/#organization"},"image":{"@id":"https:\/\/sys-tre.com\/forexguide\/mql5-file-operations\/#primaryimage"},"thumbnailUrl":"https:\/\/sys-tre.com\/forexguide\/wp-content\/uploads\/2026\/06\/forexguide-mqlref-eyecatch.png","keywords":["MQL5"],"articleSection":["MQL\u30ea\u30d5\u30a1\u30ec\u30f3\u30b9"],"inLanguage":"ja"},{"@type":"WebPage","@id":"https:\/\/sys-tre.com\/forexguide\/mql5-file-operations\/","url":"https:\/\/sys-tre.com\/forexguide\/mql5-file-operations\/","name":"MQL5 \u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u30ac\u30a4\u30c9\uff5cFileOpen\u30fbCSV\u30fb\u30ed\u30b0\u5b9f\u88c5","isPartOf":{"@id":"https:\/\/sys-tre.com\/forexguide\/#website"},"primaryImageOfPage":{"@id":"https:\/\/sys-tre.com\/forexguide\/mql5-file-operations\/#primaryimage"},"image":{"@id":"https:\/\/sys-tre.com\/forexguide\/mql5-file-operations\/#primaryimage"},"thumbnailUrl":"https:\/\/sys-tre.com\/forexguide\/wp-content\/uploads\/2026\/06\/forexguide-mqlref-eyecatch.png","datePublished":"2026-03-14T18:27:04+00:00","dateModified":"2026-04-14T15:53:26+00:00","description":"MQL5\u306e\u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c\u95a2\u6570\uff08FileOpen\u30fbFileWrite\u30fbCSV\u8aad\u307f\u66f8\u304d\uff09\u306e\u4f7f\u3044\u65b9\u3092\u89e3\u8aac\u3002\u53d6\u5f15\u30ed\u30b0\u3084\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306e\u5b9f\u88c5\u65b9\u6cd5\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002","breadcrumb":{"@id":"https:\/\/sys-tre.com\/forexguide\/mql5-file-operations\/#breadcrumb"},"inLanguage":"ja","potentialAction":[{"@type":"ReadAction","target":["https:\/\/sys-tre.com\/forexguide\/mql5-file-operations\/"]}]},{"@type":"ImageObject","inLanguage":"ja","@id":"https:\/\/sys-tre.com\/forexguide\/mql5-file-operations\/#primaryimage","url":"https:\/\/sys-tre.com\/forexguide\/wp-content\/uploads\/2026\/06\/forexguide-mqlref-eyecatch.png","contentUrl":"https:\/\/sys-tre.com\/forexguide\/wp-content\/uploads\/2026\/06\/forexguide-mqlref-eyecatch.png","width":2400,"height":1260},{"@type":"BreadcrumbList","@id":"https:\/\/sys-tre.com\/forexguide\/mql5-file-operations\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u30db\u30fc\u30e0","item":"https:\/\/sys-tre.com\/forexguide\/"},{"@type":"ListItem","position":2,"name":"MQL\u30ea\u30d5\u30a1\u30ec\u30f3\u30b9","item":"https:\/\/sys-tre.com\/forexguide\/category\/mql-reference\/"},{"@type":"ListItem","position":3,"name":"MQL5 \u30d5\u30a1\u30a4\u30eb\u64cd\u4f5c \u5b8c\u5168\u30ac\u30a4\u30c9\uff5cFileOpen\u30fbFileWrite\u30fbCSV\u8aad\u307f\u66f8\u304d\u30fb\u30ed\u30b0\u8a18\u9332\u306e\u5b9f\u88c5"}]},{"@type":"WebSite","@id":"https:\/\/sys-tre.com\/forexguide\/#website","url":"https:\/\/sys-tre.com\/forexguide\/","name":"\u30b7\u30b9\u30c8\u30ec.COM","description":"\u30b7\u30b9\u30c8\u30ec.COM ForexGuide\uff5cFX\u81ea\u52d5\u58f2\u8cb7\u306b\u95a2\u3059\u308b\u304a\u5f79\u7acb\u3061\u60c5\u5831\u3092\u66f4\u65b0\u4e2d\uff01","publisher":{"@id":"https:\/\/sys-tre.com\/forexguide\/#organization"},"alternateName":"\u30b7\u30b9\u30c8\u30ecCOM","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/sys-tre.com\/forexguide\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ja"},{"@type":"Organization","@id":"https:\/\/sys-tre.com\/forexguide\/#organization","name":"\u30b7\u30b9\u30c8\u30ec.COM","alternateName":"\u30b7\u30b9\u30c8\u30ecCOM","url":"https:\/\/sys-tre.com\/forexguide\/","logo":{"@type":"ImageObject","inLanguage":"ja","@id":"https:\/\/sys-tre.com\/forexguide\/#\/schema\/logo\/image\/","url":"https:\/\/sys-tre.com\/forexguide\/wp-content\/uploads\/2023\/05\/\u30b7\u30b9\u30c8\u30ec.COM_\u30ed\u30b4-1.svg","contentUrl":"https:\/\/sys-tre.com\/forexguide\/wp-content\/uploads\/2023\/05\/\u30b7\u30b9\u30c8\u30ec.COM_\u30ed\u30b4-1.svg","width":500,"height":500,"caption":"\u30b7\u30b9\u30c8\u30ec.COM"},"image":{"@id":"https:\/\/sys-tre.com\/forexguide\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/systre_COM","https:\/\/www.youtube.com\/@systre_com","https:\/\/www.facebook.com\/people\/%E3%82%B7%E3%82%B9%E3%83%88%E3%83%ACcom\/61587699411751\/","https:\/\/www.instagram.com\/systre_com\/","https:\/\/www.tiktok.com\/@sys_tre.com"],"description":"FX\u81ea\u52d5\u58f2\u8cb7EA\uff08Expert Advisor\uff09200\u672c\u4ee5\u4e0a\u3092\u7121\u6599\u63d0\u4f9b\u3059\u308b\u30de\u30fc\u30b1\u30c3\u30c8\u30d7\u30ec\u30a4\u30b9\u3002\u5168EA\u306e\u30d5\u30a9\u30ef\u30fc\u30c9\u30c6\u30b9\u30c8\u30fb\u30ea\u30a2\u30eb\u53e3\u5ea7\u904b\u7528\u30c7\u30fc\u30bf\u3092\u516c\u958b\u3002MT4\/MT5\u5bfe\u5fdc\u3002","foundingDate":"2023","knowsAbout":["FX\u81ea\u52d5\u58f2\u8cb7","Expert Advisor","MetaTrader","\u30c6\u30af\u30cb\u30ab\u30eb\u5206\u6790","\u30b7\u30b9\u30c6\u30e0\u30c8\u30ec\u30fc\u30c9"],"contactPoint":{"@type":"ContactPoint","contactType":"customer service","url":"https:\/\/sys-tre.com\/contact-us\/","availableLanguage":["Japanese","English"]},"legalName":"Attempia Ltd"},{"@type":"Person","@id":"https:\/\/sys-tre.com\/forexguide\/#\/schema\/person\/6d4b91f175c62b272d48ff74ffe237c1","name":"\u30b7\u30b9\u30c8\u30ec.COM\u7de8\u96c6\u90e8","image":{"@type":"ImageObject","inLanguage":"ja","@id":"https:\/\/secure.gravatar.com\/avatar\/b6ee0bfaa0b0a8c1c9af71dab7cf7fce04ac8f81a3d6bc3155344b588e526631?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/b6ee0bfaa0b0a8c1c9af71dab7cf7fce04ac8f81a3d6bc3155344b588e526631?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/b6ee0bfaa0b0a8c1c9af71dab7cf7fce04ac8f81a3d6bc3155344b588e526631?s=96&d=mm&r=g","caption":"\u30b7\u30b9\u30c8\u30ec.COM\u7de8\u96c6\u90e8"},"description":"\u30b7\u30b9\u30c8\u30ec.COM\u7de8\u96c6\u90e8\u306f\u3001FX\u81ea\u52d5\u58f2\u8cb7\uff08EA\uff09\u3068\u30c6\u30af\u30cb\u30ab\u30eb\u5206\u6790\u3092\u5c02\u9580\u3068\u3059\u308b\u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u30e1\u30c7\u30a3\u30a2\u300c\u30b7\u30b9\u30c8\u30ec.COM\u300d\u306e\u7de8\u96c6\u30c1\u30fc\u30e0\u3067\u3059\u3002200\u672c\u4ee5\u4e0a\u306eEA\u306e\u30d5\u30a9\u30ef\u30fc\u30c9\u30c6\u30b9\u30c8\u7d50\u679c\u3092\u516c\u958b\u3057\u3001\u5b9f\u969b\u306e\u904b\u7528\u30c7\u30fc\u30bf\u306b\u57fa\u3065\u3044\u305f\u5ba2\u89b3\u7684\u306a\u60c5\u5831\u3092\u767a\u4fe1\u3057\u3066\u3044\u307e\u3059\u3002\u8a18\u4e8b\u306e\u57f7\u7b46\u30fb\u76e3\u4fee\u306fMetaTrader\uff08MT4\/MT5\uff09\u3067\u306e\u5b9f\u904b\u7528\u7d4c\u9a13\u3092\u6301\u3064\u30b9\u30bf\u30c3\u30d5\u304c\u62c5\u5f53\u3002","sameAs":["https:\/\/sys-tre.com\/forexguide\/about\/","https:\/\/x.com\/systre_COM"],"jobTitle":"FX\u81ea\u52d5\u58f2\u8cb7\u30fb\u30c6\u30af\u30cb\u30ab\u30eb\u5206\u6790 \u7de8\u96c6\u30c1\u30fc\u30e0","knowsAbout":["FX\u81ea\u52d5\u58f2\u8cb7","Expert Advisor (EA)","\u30c6\u30af\u30cb\u30ab\u30eb\u5206\u6790","MetaTrader 4","MetaTrader 5","MQL4","MQL5","\u30ea\u30b9\u30af\u7ba1\u7406","\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u30c8\u30ec\u30fc\u30c9"],"url":"https:\/\/sys-tre.com\/forexguide\/about\/","worksFor":{"@type":"Organization","name":"\u30b7\u30b9\u30c8\u30ec.COM","url":"https:\/\/sys-tre.com\/"}}]}},"_links":{"self":[{"href":"https:\/\/sys-tre.com\/forexguide\/wp-json\/wp\/v2\/posts\/65662","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sys-tre.com\/forexguide\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sys-tre.com\/forexguide\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sys-tre.com\/forexguide\/wp-json\/wp\/v2\/users\/686"}],"replies":[{"embeddable":true,"href":"https:\/\/sys-tre.com\/forexguide\/wp-json\/wp\/v2\/comments?post=65662"}],"version-history":[{"count":3,"href":"https:\/\/sys-tre.com\/forexguide\/wp-json\/wp\/v2\/posts\/65662\/revisions"}],"predecessor-version":[{"id":67378,"href":"https:\/\/sys-tre.com\/forexguide\/wp-json\/wp\/v2\/posts\/65662\/revisions\/67378"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/sys-tre.com\/forexguide\/wp-json\/wp\/v2\/media\/71194"}],"wp:attachment":[{"href":"https:\/\/sys-tre.com\/forexguide\/wp-json\/wp\/v2\/media?parent=65662"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sys-tre.com\/forexguide\/wp-json\/wp\/v2\/categories?post=65662"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sys-tre.com\/forexguide\/wp-json\/wp\/v2\/tags?post=65662"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}