<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>uninitial アーカイブ - 自動売買を作ろう！</title>
	<atom:link href="https://mql-programing.com/archives/tag/uninitial/feed/" rel="self" type="application/rss+xml" />
	<link>https://mql-programing.com/archives/tag/uninitial/</link>
	<description>MQLプログラミング学習サイト</description>
	<lastBuildDate>Tue, 31 Mar 2026 13:05:07 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://mql-programing.com/main29/wp-content/uploads/2021/02/cropped-ブログアイコン-32x32.jpg</url>
	<title>uninitial アーカイブ - 自動売買を作ろう！</title>
	<link>https://mql-programing.com/archives/tag/uninitial/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>【MQL4定数】アンイニシャル定数（REASON_○○）</title>
		<link>https://mql-programing.com/archives/2767/uninitial/</link>
		
		<dc:creator><![CDATA[朝日奈りさ]]></dc:creator>
		<pubDate>Sat, 07 May 2022 06:28:45 +0000</pubDate>
				<category><![CDATA[【辞書】MQLリファレンス]]></category>
		<category><![CDATA[定数]]></category>
		<category><![CDATA[MQL]]></category>
		<category><![CDATA[リファレンス]]></category>
		<category><![CDATA[uninitial]]></category>
		<category><![CDATA[reason_]]></category>
		<category><![CDATA[UninitializeReason]]></category>
		<category><![CDATA[OnDeinit]]></category>
		<category><![CDATA[_UninitReason]]></category>
		<guid isPermaLink="false">https://mql-programing.com/?p=2767</guid>

					<description><![CDATA[<p>アンイニシャル定数（REASON_○○） アンイニシャル定数は、プログラムが終了した理由を定数にしたものです。 エラーコード定数と似ていますが、アンイニシャル定数はプログラムが正常に終了したときに使用されます。 作成した [&#8230;]</p>
<p>投稿 <a href="https://mql-programing.com/archives/2767/uninitial/">【MQL4定数】アンイニシャル定数（REASON_○○）</a> は <a href="https://mql-programing.com">自動売買を作ろう！</a> に最初に表示されました。</p>
]]></description>
										<content:encoded><![CDATA[
<h2 class="wp-block-heading"><span id="toc1">アンイニシャル定数（REASON_○○）</span></h2>



<p><strong><span class="marker-under-red">アンイニシャル定数は、プログラムが終了した理由を定数にしたものです。</span></strong></p>



<p>エラーコード定数と似ていますが、アンイニシャル定数はプログラムが正常に終了したときに使用されます。</p>



<p><strong>作成したプログラムがうまくロードされないとき、デバッグするために使用すると良いでしょう。</strong></p>



<p>特に、エラーが出ない場合に、アンイニシャル定数を確認して見ることをオススメします。</p>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<p>アンイニシャル定数を取得するには、<strong>UninitializeReason関数</strong>を使用します。</p>



<p>UninitializeReason関数を使用することで、最近のアンイニシャル定数を取得することができます。</p>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<p>また、アンイニシャル定数は、<strong><a href="https://mql-programing.com/ondeinit/" title="【MQL4関数】OnDeinit関数とは？アンイニシャルコード発生時に実行されるイベント関数">OnDeinit関数</a>の引数</strong>としても使われています。</p>



<p>OnDeinit関数は、プログラムが自動的に使う関数なので、特に意識する必要はありませんが知っておくと良いでしょう。</p>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<h3 class="wp-block-heading"><span id="toc2">アンイニシャル定数（REASON_○○）</span></h3>



<figure class="wp-block-table alignfull is-style-stripes"><table><tbody><tr><td><strong>定数</strong></td><td><strong>数値</strong></td><td><strong>説明</strong></td></tr><tr><td>REASON_PROGRAM</td><td>0</td><td>ExpertRemove関数で終了した</td></tr><tr><td>REASON_REMOVE</td><td>1</td><td>プログラムがチャートから削除された</td></tr><tr><td>REASON_RECOMPILE</td><td>2</td><td>プログラムが再コンパイルされた</td></tr><tr><td>REASON_CHARTCHANGE</td><td>3</td><td>通貨ペアまたは時間軸が変更された</td></tr><tr><td>REASON_CHARTCLOSE</td><td>4</td><td>チャートが閉じられた</td></tr><tr><td>REASON_PARAMETERS</td><td>5</td><td>ユーザーによって入力パラメータが変更された</td></tr><tr><td>REASON_ACCOUNT</td><td>6</td><td>トレードサーバーへの再接続が発生した<br>または別アカウントに変更された</td></tr><tr><td>REASON_TEMPLATE</td><td>7</td><td>新しいテンプレートが適用された</td></tr><tr><td>REASON_INITFAILED</td><td>8</td><td>OnInit関数が0以外の値を返した</td></tr><tr><td>REASON_CLOSE</td><td>9</td><td>ターミナルが閉じられた</td></tr></tbody></table></figure>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading"><span id="toc3">アンイニシャル定数（REASON_○○）の使い方</span></h2>



<p>アンイニシャル定数は、<strong><span class="marker-under-red">_UninitReasonという変数</span></strong>に格納されます。</p>



<p>_UninitReason変数は、アンイニシャルされたときに自動的にアンイニシャル定数が格納されます。</p>



<p>最近のアンイニシャル変数を取得したい場合は、UninitializeReason関数を使用します。</p>



<p><strong>UninitializeReason関数を使うことにより、_UninitReason変数の値を取得することができます。</strong></p>



<p>例えば、以下のように使用します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>void OnStart() {
    ExpertRemove();
    Print(UninitializeReason());
}</code></pre></div>



<p>　</p>



<p>上記のように記述することで、以下のような出力を得ることができます。</p>



<p>0</p>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading"><span id="toc4">プログラム例：アンイニシャル定数を活用したデバッグ</span></h2>



<p>以下は、OnDeinit関数内でアンイニシャル定数を使い、プログラムが終了した理由をログに出力するサンプルプログラムです。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>//+------------------------------------------------------------------+
//| アンイニシャル定数を活用したデバッグ例
//+------------------------------------------------------------------+
int OnInit()
{
    Print("EA が初期化されました。");
    return(INIT_SUCCEEDED);
}

void OnDeinit(const int reason)
{
    // アンイニシャル定数に応じてメッセージを出力
    switch(reason)
    {
        case REASON_PROGRAM:
            Print("終了理由: ExpertRemove関数で終了しました");
            break;
        case REASON_REMOVE:
            Print("終了理由: チャートから削除されました");
            break;
        case REASON_RECOMPILE:
            Print("終了理由: 再コンパイルされました");
            break;
        case REASON_CHARTCHANGE:
            Print("終了理由: 通貨ペアまたは時間軸が変更されました");
            break;
        case REASON_CHARTCLOSE:
            Print("終了理由: チャートが閉じられました");
            break;
        case REASON_PARAMETERS:
            Print("終了理由: 入力パラメータが変更されました");
            break;
        case REASON_ACCOUNT:
            Print("終了理由: アカウントが変更されました");
            break;
        case REASON_TEMPLATE:
            Print("終了理由: テンプレートが適用されました");
            break;
        case REASON_INITFAILED:
            Print("終了理由: OnInit関数が失敗しました");
            break;
        case REASON_CLOSE:
            Print("終了理由: ターミナルが閉じられました");
            break;
        default:
            Print("終了理由: 不明（コード: ", reason, "）");
            break;
    }

    // UninitializeReason関数でも取得可能
    Print("UninitializeReason() の戻り値: ", UninitializeReason());
}

void OnTick()
{
    // 通常のティック処理
}</code></pre></div>



<p>　</p>



<p>このプログラムでは、OnDeinit関数の引数reasonにアンイニシャル定数が渡されます。switch文を使って各定数に対応するメッセージをログに出力しています。</p>



<p><strong>プログラムが意図せず終了してしまう場合、このようにアンイニシャル定数を確認することで原因を特定しやすくなります。</strong></p>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<div class="wp-block-cocoon-blocks-button-1 button-block"><a href="https://mql-programing.com/sample_program/" class="btn btn-l btn-circle" target="_self">サンプルプログラムはこちら</a></div>



<p>　</p>



<figure class="wp-block-embed is-type-wp-embed is-provider-自動売買を作ろう！ wp-block-embed-自動売買を作ろう！"><div class="wp-block-embed__wrapper">

<a href="https://mql-programing.com/make_autotrade_by_myself/" title="【MQL4プログラミング】自動売買の作り方！FXで使えるテンプレートあり" class="blogcard-wrap external-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard external-blogcard eb-left cf"><div class="blogcard-label external-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail external-blogcard-thumbnail"><img decoding="async" src="https://i0.wp.com/mql-programing.com/main29/wp-content/uploads/2021/09/make_autotrade_by_myself.jpg?fit=1200%2C675&#038;ssl=1" alt="" class="blogcard-thumb-image external-blogcard-thumb-image" width="160" height="90" /></figure><div class="blogcard-content external-blogcard-content"><div class="blogcard-title external-blogcard-title">【MQL4プログラミング】自動売買の作り方！FXで使えるテンプレートあり</div><div class="blogcard-snippet external-blogcard-snippet">目次 はじめにFX自動売買とはFX自動売買を作るための準備FX自動売買の作り方口座凍結の対策をするプログラムテンプレートを作る決済ロジックをプログラミングするプログラムテンプレートを作るエントリーロジックをプログラミング</div></div><div class="blogcard-footer external-blogcard-footer cf"><div class="blogcard-site external-blogcard-site"><div class="blogcard-favicon external-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://mql-programing.com/archives/1605/make_autotrade_by_myself/" alt="" class="blogcard-favicon-image external-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain external-blogcard-domain">mql-programing.com</div></div></div></div></a>
</div></figure>



<figure class="wp-block-embed is-type-wp-embed is-provider-自動売買を作ろう！ wp-block-embed-自動売買を作ろう！"><div class="wp-block-embed__wrapper">

<a href="https://mql-programing.com/mql-reference/" title="MQL4リファレンス【全データ一覧】" class="blogcard-wrap internal-blogcard-wrap a-wrap cf"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img decoding="async" width="160" height="90" src="https://mql-programing.com/main29/wp-content/uploads/2021/02/MQLリファレンス-160x90.jpg" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://mql-programing.com/main29/wp-content/uploads/2021/02/MQLリファレンス-160x90.jpg 160w, https://mql-programing.com/main29/wp-content/uploads/2021/02/MQLリファレンス-300x169.jpg 300w, https://mql-programing.com/main29/wp-content/uploads/2021/02/MQLリファレンス-1024x576.jpg 1024w, https://mql-programing.com/main29/wp-content/uploads/2021/02/MQLリファレンス-768x432.jpg 768w, https://mql-programing.com/main29/wp-content/uploads/2021/02/MQLリファレンス-120x68.jpg 120w, https://mql-programing.com/main29/wp-content/uploads/2021/02/MQLリファレンス-320x180.jpg 320w, https://mql-programing.com/main29/wp-content/uploads/2021/02/MQLリファレンス.jpg 1120w" sizes="(max-width: 160px) 100vw, 160px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">MQL4リファレンス【全データ一覧】</div><div class="blogcard-snippet internal-blogcard-snippet">/*! elementor - v3.6.5 - 27-04-2022 */.e-container.e-container--row .elementor-spacer-inner{width:var(--spacer-size)}.e-</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img loading="lazy" decoding="async" src="https://www.google.com/s2/favicons?domain=https://mql-programing.com" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">mql-programing.com</div></div></div></div></a>
</div></figure>



<p>　</p>
<p>投稿 <a href="https://mql-programing.com/archives/2767/uninitial/">【MQL4定数】アンイニシャル定数（REASON_○○）</a> は <a href="https://mql-programing.com">自動売買を作ろう！</a> に最初に表示されました。</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
