忍者ブログ

forex tester2のインディケーターを自作

fx(外国為替証拠金取引)のトレードの練習やルールの検証をForex Tester 2というソフトでしてみます。 Meta Trader4(MT4)のインディケーター(indicator)をForex Tester2用に移植できたらしてみます。

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。


MetaTraderWebにユーザー登録完了

上のバナーで紹介しているMetaTraderWeb(メタトレーダーウェブ)のサービスに申し込んで
Forex.com UKに口座を開き入金したら
自分用のサーバーが用意されたので少しだけ遊んでみました。

口座にある程度の残高があれば
月に1回取引をするだけでサーバーを維持してもらえるので
格安のレンタルサーバーとなります。

毎月1000通貨で1回取引するだけで条件を満たせるので
スプレッドの狭いペアで成行してすぐに決済すれば数十円で
WindowsVPSをレンタルできることになります。

リモートデスクトップで操作できるので簡単です。
ローカルのPCとクリップボードも共有できます。
スクリーンキャプチャもクリップボード経由でコピーできました。

最初からWebサーバーがインストールされていてすぐにHPを公開できます。
エクスプローラーからFTPでファイルのやり取りができました。

固定IPなのでDynDNSに登録してサーバー名を付けました。

毎月数十円で自分用のサーバーが持てて嬉しいです。


以下がレンタルしたサーバーのスペックです。



Windows Server Datacenter Service Pack 2
Intel(R) Xeon(R) CPU L5520 @ 2.27GHz
RAM 1.00GB

HDDは29.9Gで3G弱を使用しています。



PR

MSVCP100.dll、MSVCR100.dll を必要としないビルド方法

これまで販売してきたインディケーターのdll((Dynamic Link Library,ダイナミックリンクライブラリ)は
Microsoft Visual C++ 2010 Expressで作成しており
Microsoft Visual C++ 2010 シリーズをインストールするか
Microsoft Visual C++ 2010 再頒布可能パッケージ(いわゆる ランタイムライブラリ)
をインストールしないと実行できませんでした。

もしどちらもインストールしていないとForexTester2を起動するときに
「MSVCP100.dllが見つからないため、このアプリケーションを開始できませんでした。」
のようなメッセージが表示されインディケーターが読み込まれませんでした。


これまではMSVCP100.dllが必須と思っていましたが
今になってプロジェクトの構成プロパティにランタイムライブラリの項目がありマルチスレッド(/MT)
にするとMSVCP100.dll、MSVCR100.dllが不要となることに気づきました。






今までの設定
 

作成されたdllをdumpbin.exeで見ると
>dumpbin /DEPENDENTS /IMPORTS Bollinger_Band_Width.dll Microsoft (R) COFF/PE Dumper Version 10.00.30319.01 Copyright (C) Microsoft Corporation. All rights reserved. Dump of file Bollinger_Band_Width.dll File Type: DLL Image has the following dependencies: MSVCP100.dll MSVCR100.dll KERNEL32.dll Section contains the following imports: MSVCP100.dll 10003040 Import Address Table 10003618 Import Name Table 0 time date stamp 0 Index of first forwarder reference 28C ?_Xlength_error@std@@YAXPBD@Z MSVCR100.dll 10003048 Import Address Table 10003620 Import Name Table 0 time date stamp 0 Index of first forwarder reference 1C5 _amsg_exit 131 __CppXcptFilter 2B1 _initterm_e 221 _except_handler4_common 102 ?terminate@@YAXXZ EE ?_type_info_dtor_internal_method@type_info@@QAEXXZ 153 __clean_type_info_names_internal 2B0 _initterm 219 _encoded_null 334 _malloc_crt 3C9 _onexit 323 _lock 15B __dllonexit 48D _unlock 63 ??2@YAPAXI@Z 65 ??3@YAXPAX@Z 5C4 malloc 58B free 24 ??0exception@std@@QAE@ABV01@@Z 22 ??0exception@std@@QAE@ABQBD@Z 5D ??1exception@std@@UAE@XZ 10D ?what@exception@std@@UBEPBDXZ 1FB _crt_debugger_hook 5D3 memset 121 _CxxThrowException 13A __CxxFrameHandler3 11B _CIsqrt KERNEL32.dll 10003000 Import Address Table 100035D8 Import Name Table 0 time date stamp 0 Index of first forwarder reference CA DecodePointer 2EC InterlockedExchange 279 GetSystemTimeAsFileTime 1C1 GetCurrentProcessId 1C5 GetCurrentThreadId 293 GetTickCount 3A7 QueryPerformanceCounter 300 IsDebuggerPresent 4A5 SetUnhandledExceptionFilter 4D3 UnhandledExceptionFilter 1C0 GetCurrentProcess 4C0 TerminateProcess 2E9 InterlockedCompareExchange 4B2 Sleep EA EncodePointer Summary 1000 .data 1000 .rdata 1000 .reloc 1000 .rsrc 2000 .text
3つのdllを必要としています。


今日気づいた設定
 

dumpbin.exeでみてみると

>dumpbin /DEPENDENTS /IMPORTS Bollinger_Band_Width.dll Microsoft (R) COFF/PE Dumper Version 10.00.30319.01 Copyright (C) Microsoft Corporation. All rights reserved. Dump of file Bollinger_Band_Width.dll File Type: DLL Image has the following dependencies: KERNEL32.dll Section contains the following imports: KERNEL32.dll 1000C000 Import Address Table 1000EA84 Import Name Table 0 time date stamp 0 Index of first forwarder reference 202 GetLastError 2CF HeapFree 2CB HeapAlloc EA EncodePointer CA DecodePointer 1C5 GetCurrentThreadId 186 GetCommandLineA 3B1 RaiseException 4C0 TerminateProcess 1C0 GetCurrentProcess 4D3 UnhandledExceptionFilter 4A5 SetUnhandledExceptionFilter 300 IsDebuggerPresent 2CD HeapCreate 2CE HeapDestroy 245 GetProcAddress 218 GetModuleHandleW 119 ExitProcess 525 WriteFile 264 GetStdHandle 214 GetModuleFileNameW 4B2 Sleep 2D4 HeapSize 4C5 TlsAlloc 4C7 TlsGetValue 4C8 TlsSetValue 4C6 TlsFree 2EF InterlockedIncrement 473 SetLastError 2EB InterlockedDecrement 46F SetHandleCount 2E3 InitializeCriticalSectionAndSpinCount 1F3 GetFileType 263 GetStartupInfoW D1 DeleteCriticalSection 213 GetModuleFileNameA 161 FreeEnvironmentStringsW 511 WideCharToMultiByte 1DA GetEnvironmentStringsW 3A7 QueryPerformanceCounter 293 GetTickCount 1C1 GetCurrentProcessId 279 GetSystemTimeAsFileTime 339 LeaveCriticalSection EE EnterCriticalSection 33F LoadLibraryW 2D2 HeapReAlloc 418 RtlUnwind 172 GetCPInfo 168 GetACP 237 GetOEMCP 30A IsValidCodePage 32D LCMapStringW 367 MultiByteToWideChar 269 GetStringTypeW 304 IsProcessorFeaturePresent Summary 3000 .data 4000 .rdata 2000 .reloc 1000 .rsrc B000 .text
MSVCP100.dll、MSVCR100.dllが不要となっています。

サイズが13kbから68kbに増えましたが問題ではないです。

それよりも 再頒布可能パッケージをインストールしてなくてトラブルことのほうが問題です。

今後は できるだけ再頒布可能パッケージが不要のdllを販売していこうと思います。


ADXDMI

ADXDMI.mq4みたいなのをForexTester2用に移植してみました。

「ADXDMI」と「BBand Width Ratio」は
待つFX~1日3度のチャンスを狙い撃ちする~ の手法で使用するようです。


ADXDMI.mq4 のコードをみて気づいた人もいるかもしれませんが
price_high,price_low という変数を値を設定せずに使用しています。
本当はどうしたかったのでしょうか?
MetaTrader4では未初期化の変数が0になっていて偶然
不定な値とならずにうまく表示されている思われます。


こちらこちらで販売中です。 

似ている部分と似ていない部分があります。
レートの違いと思いたいです。




販売中のインジケーター一覧はこちらです。


T3 Moving Average

T3.mq4(T3 Moving Average) みたいなのを
ForexTester2用に移植してみました。
http://gaitameotoko.up.seesaa.net/image/T3.mq4
を移植しました。

こちらで販売中です。 


http://www.abysse.co.jp/mt4/indicators/T3.mq4
を移植したものは以下です。
http://forextester.o-oi.net/Entry/158/




 


販売中のインディケーター一覧はこちらです。

QQE-VT、QQE

QQE-VT.mq4 みたいなのを
ForexTester2用に移植してみました。

プロパティでQQE.mq4のような2本だけの表示にも変更できます。



こちらで販売中です。 



完全に同じにはなっていません。計算の間違えかデータの違いによるものかわかりません。





販売中のインジケーター一覧はこちらです。


Thunderbird3

フリーのメールクライアントのThunderbird3を使用していますが
global-messages-db.sqlite という巨大なファイルが作成されていることに気づきました。

Thunderbirdを終了後にglobal-messages-db.sqlite を削除して
Thunderbirdを再度起動するとglobal-messages-db.sqliteが勝手に作り直されることに気づきました。

 ツール/オプション/詳細/一般/高度な設定、グローバル検索と索引データベースを有効にする
のチェックをはずしてglobal-messages-db.sqlite を削除して再起動すると
勝手にファイルを作成されますが小さく収まることに気づきました。



MTF_BollingerBands7

MTF_BollingerBands は+2σ,+1σ,Middle,-1σ,-2σの5本の表示ですが
こちらは+3σ,-3σの2本を加えた7本を表示します

いい加減な名前をつけちゃいました。

計算量が多いため遅いかもしれないです。



こちらで販売中です。

 




販売中のインジケーター一覧はこちらです。


BBFibo-VT

BBFibo-VT.mq4 をForexTester2用に移植してみました。

このインディケーターはBollinger Bandsという名が付いていますが
標準偏差は使用していません。単純移動平均線を中心にして上下に
ATRをフィボナッチ比率倍した線を引いているだけです。

BBFibo.mq4 の方は標準偏差を使用していると思います。



こちらで販売中です。



MT4とFT2の比較です。似通っています。





販売中のインジケーター一覧はこちらです。


MTF_BollingerBands

MTF_BollingerBands.mq4 みたいなのをForexTester2用に移植してみました。
ForexTester2に付属のBollingerBandsはEMAですがこれはSMAの標準偏差です。
MetaTrader4がSMAなのでそれにあわせています。


こちらで販売中です。 


動画です。


販売中のインジケーター一覧はこちらです。


TII_RLH(TⅡ_RLH)

TII_RLH.mq4(TⅡ_RLH) みたいなのを
ForexTester2用に作成してみました。



こちらで販売中です。



MetaTrader4との比較です。似ています。





動画です。  



販売中のインジケーター一覧はこちらです。


forex tester2 販売
Forex Tester 2の購入はこちらから。
カレンダー
12 2025/01 02
S M T W T F S
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
カテゴリー
フリーエリア



最新記事
最新CM
最新TB
RSS
ブログ内検索
アーカイブ
最古記事
プロフィール
HN:
fx練習生
年齢:
49
性別:
男性
誕生日:
1975/04/03
職業:
夢は専業トレーダー
趣味:
fx
自己紹介:
fxの専業トレーダーになって経済的自由と時間的自由を手に入れたいです。
自分で売買ルールを作成してテストして自信をもってリアルトレードしたいです。
P R