【MT4/5】MetaTrader初心者専用41【ゆとり隔離スレ】

このエントリーをはてなブックマークに追加
1Trader@Live!
▼Q: ダウ先物が見たい
  A: Brocoが終了したので他を当ってください

▼質問するときは・・・
 ・使用しているサーバー名
 ・使用しているインジケーター名、EA名
 ・どこからダウンロードしたのか・・・などを出来るだけ記入してください。

▼めたとれなうpろだ
  ttp://u3.getuploader.com/mt
 インジケーター、EAの相談はこちらにUPしてから

▼MT4マニュアル日本語マニュアル
  ttp://jp.forex.com/jp/platform/how_to_use_metatrader_all.pdf

▼MQL言語リファレンス日本語翻訳マニュアル
  ttp://www.metasys-seeker.net/MQL4_Reference_ver1/MQL4_Reference_Contents.html

▼MetaTraderまとめWiki
  ttp://hikaku.fxtec.info/metatrader/
 少なくとも1日はあれこれイジクッテ下さい。基本的な操作方法は、数時間もいじくれば理解できます。
 ツールバーのファイルメニューからヘルプまで一通り試しましょう。
 本スレテンプレを読めば分かることは、スルーされます。

▼分からないことが出てきたら、まずググってください。
MetaTraderスレッドまとめ
 ttp://hikaku.fxtec.info/metatrader/wiki.cgi?page=MetaTrader%A5%B9%A5%EC%A5%C3%A5%C9%A4%DE%A4%C8%A4%E1
 上記各スレで分からない語句をググると、すんなり答えが見つかるかもしれません。

▼MetaTrader4の使い方解説サイトの紹介
 システムトレード研究所/MetaTrader4の使い方
 ttp://jidoubaibai.com/burogu4.html

▼他のインジケーターを試したいならここら辺りで。
 Q: 〜ってインジケーターはどこにあるの?
 A: ▼カスタムテクニカル指標配布サイト
  ttp://codebase.mql4.com/indicators
  ttp://www.forexmt4.com/_MT4_Indicators/
  ttp://www.abysse.co.jp/mt4/ 名前と画像から検索できる
  ttp://www.forex-tsd.com/ ここでググるもよし。
  ttp://www.forex-tsd.com/indicators-metatrader-4/2519-350-mt4-indicators-one-folder.html
  ttp://www.mql4.com/ でググるもよし
  ttp://www.forexmt4.com/_MT4_Experts/
  ※ C:\Program Files\MetaTrader 4\experts\indicators(←ここのフォルダに移して再起動)
一部業者が配布しているMT4と若干内部仕様の違いにより完全な互換性が取れていません。
また一部のテクニカル指標において別途includeファイルやlibraryファイルを必要とするものがあります。

▼慣れたらここでステップアップ
forex-tsd
  ttp://www.forex-tsd.com/metatrader-4/
  ttp://www.forex-tsd.com/3746-post20.html

▼メタトレーダー書籍
「FXメタトレーダー入門 最先端システムトレードソフト使いこなし術」豊嶋久道 2,940円 (税込) 2007年12月発売
 著者のサイト ttp://forex.toyolab.com/
2Trader@Live!:2013/12/09(月) 11:49:45.54 ID:WqhwKYlV
初心者Q&A
Q: Vista、Windows7で動かないのですが?
A: 以下を試してみてください。
  1 [コンピュータ]を右クリック。[プロパティ]を選択
  2 [システムの詳細設定]を選択
  3 [詳細設定]タブをクリック
  4 [パフォーマンス]の[設定]をクリック
  5 [データ実行防止]タブをクリック
  6 「重要なWindowsプログラムおよびサービスについてのみ有効にする」をオンにする
  7 okをクリック
  8 OSを再起動
  ※ Vista/Win7 の場合、C:\Program Files 以外の場所(C:\MT4 以下)にインストールするのが便利です。

Q: ファイル→デモ口座の申請 でデモ口座が作れません。
A: 一部のサーバでは、Build 409 より古い MT4 では口座が作れません。最新版を入手してterminal.exe をコピーしましょう。

Q: 指定した値になったら、アラート鳴らしたいんだけど?
A: メニューの表示-ターミナルでアラーム設定のタブがありますので、そこで設定できます。

Q: 土日は動かないのですか?
A: ほとんどの業者は休みです。
  サーバーに接続だけ出来る業者もありますが、更新はされません。

Q: TSDって何を見ればいいの?
A: まずはここから登録して下さい。
  http://www.forex-tsd.com/register.php
  後はあちこち見れば勉強になります。

Q: 10分足とか他の時間足を表示したい。
A: 「MT4 10分足」でググって下さい。URLは差し控えます。

Q: 付属しているMACDをライン表示にしたい。
A: MetaEditorでMACD.mq4を開いて、「DRAW_HISTOGRAM」で検索、DRAW_HISTOGRAMを「DRAW_LINE」に変更、念のため別名保存してコンパイルする。

Q: RCIのインディケーターはどこにあるの?
A: 「SpearmanRankCorr mq4」で検索するよろし。

Q: 同じインディケーターを同じウインドウに表示したい。
A: 共存させたいインディケーターを同じウインドウにドラッグ&ドロップ、設定を変えて表示させる。

Q: MetaEditorでコンパイルするやり方がわかりません
A: MetaEditorのツールバーのcompileで出来る。面倒だったらファイルを保存して、MT4を再起動

Q: ティックチャートを表示する方法を教えてください。
A: 気配値表示の所にティックチャートタブをクリック

Q: ボリンジャーバンドの三本線を五本線にしたい。
A: 標準偏差の設定値を変えたボリンジャーバンドをもうひとつ描画
A: 標準偏差の設定値を1にして、Levels に ±2,±3,を設定してもよし。

Q: 過去のチャートを見ようとしたら、すぐに現在の位置に戻ってしまうのですが?
A: ツールバーのAuto Scrollボタンをoffにする。

Q: 使わないインジケーターを削除するにはどうすればいいの?
A: 使わないインジケーターにカーソルを合わせ右クリック→削除

Q: インジケーターのラインの色、太さを変えたいんだけど
A: MetaEditorで該当するインジケーターを開きます。
  #propertyで検索(初めの方に記述してありますのですぐ見つかります。)
3Trader@Live!:2013/12/09(月) 11:50:06.10 ID:WqhwKYlV
色を変更したい場合(例)
  #property indicator_color1 Red
  のRedを変えたい色に書き換える(Blue,Green,Yellowなど)
  #property indicator_color1 Yellow(←変更後)
  色の指定の頭文字は大文字で記述します。Blue→○、blue→×

 太さ、幅を変更したい(例)
  #property indicator_width1 1
  の線の太さ1を変えたい太さに変更する。(1〜5までの整数)
  #property indicator_width1 3(←変更後)

  変更後、保存してコンパイルまたは再起動する。
  #property indicator_colorや
  #property indicator_widthが無い場合、
  SetIndexStyleで個別に指定されていると思います。
  SetIndexStyleで検索します。
  (例)SetIndexStyle(0, DRAW_LINE, STYLE_SOLID, 1, Red);
  上記の「1」が太さ、Redが色です。
  太さを3、色を青に変更する場合は
  (例)SetIndexStyle(0, DRAW_LINE, STYLE_SOLID, 3, Blue);となります。

Q: 「チャートを右クリ→定型チャート→定型として保存」としても、保存できないけど。
A: @上の方法で保存できない場合。名前をつけて「定型として保存」するときに、保存先をMT4があるフォルダより上の階層(デスクトップ以外)を選択して保存する。
  A保存したファイルをMT4直下のtemplatesフォルダにコピペすればOK
  Bこれで、チャートを右クリ>定型チャートで好みのチャートを一発で呼び出せる。

Q: このスレでよく出てくるインジケーター
A: ・Fibopiv ・FerruFx_Multi ・nonlagdot ・#MTF_StochasticBar
  ・ZigZag Pointer ・Traders Dynamic Index
  ・Period_Converter_Opt ・Clock ・Grid Builder.mq4
  以上に「mq4」を加え検索。

Q: 日本時間を表示させたい
A: JPN_Time_Sub mq4 または CIDP_JPY_Time.mq4 または JPN_Time_SubZero.mq4 :-)

Q: ゆとりスレなのに・・・
A: 「MetaTraderのための」ゆとりスレです。「パソコン初心者」「2ちゃんねる初心者」のスレではありません。

Q: 「YM」や「NK」ってなに?
A: 「先物 シンボル 一覧」でググる。
  シンボル一覧の代わり http://web.archive.org/web/20080125182852/http://www.globalprice-inc.com/ja/d001-9.html

Q: チャートを重ね合わせて反転表示にしたいんだけど。
A: オーバーレイチャートスクリプト Ver.1.10 で検索

Q: 日足のMAが何か変なんだけど・・・
A: サーバーにより週に日足が5本のところと6本のところがあります。
  日足が週に5本のところを表示させるのが、手っ取り早いです。
  週5本のとこMeta Quote、FXDD、Alpari、WHC
  週6本のとこ、ODL

Q: 再インストールする場合、どのフォルダをバックアップしておけば良いの?
A: experts(中のindicatorsフォルダも)、history(人によっては結構容量あるかも)、config, templates, symbolsets, profilesのフォルダをバックアップ。
  これで大体もとの環境を作ることが出来る

▼MQL4を勉強するには
MetaEditorのToolboxからHelpを選択すると、リファレンスがあります。また、以下でも見ることが出来ます。
  ttp://docs.mql4.com/
日本語訳があります。
  ttp://www.metasys-seeker.net/MQL4_Reference_ver1/MQL4_Reference_Contents.html
4Trader@Live!:2013/12/09(月) 11:51:35.50 ID:WqhwKYlV
▼TSDで勉強しましょう。
  ttp://www.forex-tsd.com/3746-post20.html

▼マニアックなテクニックの解説があります。
  ttp://d.hatena.ne.jp/fai_fx/

▼サーバの設定の仕方
  MetaTrader 4のメニューバーで
  ツール → オプション → サーバ
  サーバ(S)のところに上記のIPアドレスを入れる。

  ファイル → デモ口座の申請
  「貴社からのニュースレター受取りに同意します」にチェック、Scanボタンを押してアクセス状態を確認する。
  アクセスでき、Ping返答時間の短いものを選ぶ。もう一度ログインし直す。

  他にも業者がありますので探してみましょう。

▼サーバのIPを調べる方法
  MT4のフォルダーをクリックして、configという名のフォルダーを開く。
  C:\Program Files\MetaTrader 4\config

  使用しているデモサーバーの名前がついたファイルを右クリックして、「プログラムから開く」でメモ帳を選択。
  多くの文字が文字化けしているが、3行目に数字の羅列がある。
  この数字がデモサーバのIPとなる。

▼前スレ
【MT4/5】MetaTrader初心者専用40【ゆとり隔離スレ】
http://hayabusa3.2ch.net/test/read.cgi/livemarket2/1379936277/l50
5Trader@Live!:2013/12/09(月) 11:54:25.30 ID:WqhwKYlV
更に関連スレ

【MT4/5】MetaTrader質問スレ ★1
http://hayabusa3.2ch.net/test/read.cgi/livemarket2/1377931721/l50

【ハイレバ】 海外FX業者スレ Part23 【MT4】
http://hayabusa3.2ch.net/test/read.cgi/livemarket2/1384097027/l50

MT4を超えるFXプログラミングは?
http://hayabusa3.2ch.net/test/read.cgi/livemarket2/1346672007/l50

【シストレ】究極のEAを作るスレ【MT4】
http://hayabusa3.2ch.net/test/read.cgi/livemarket2/1380516949/l50

【海外FX】リアルマテリアルFX MT4【地味に優良】
http://hayabusa3.2ch.net/test/read.cgi/livemarket2/1379017737/l50

【ATM停止】養分達の逆襲【MT4 EA/裁量】
http://hayabusa3.2ch.net/test/read.cgi/livemarket2/1383814398/l50
6Trader@Live!:2013/12/09(月) 11:56:07.73 ID:WqhwKYlV
▼国内 MT4 採用ブローカー 2013

FXCMジャパン証券           http://www.fxcm.co.jp/
FXトレード・フィナンシャル       http://www.fxtrade.co.jp/
アルパリジャパン            http://www.alpari.jp/
アヴァトレード・ジャパン        http://www.avatrade.co.jp/
サイバーエージェントFX        http://www.cyberagentfx.jp/

セブンインベスターズ(日産センチュリ) http://www.7fx.jp/
フォレックスドットコム・ジャパン    http://jp.forex.com/
外為ファイネスト             http://www.gaitamefinest.com/
OANDA Japan              http://www.oanda.jp/service/mt4/index.php
東岳証券                 http://www.easthillfx.co.jp/jp/mt4_index.asp

efxドットコム(サザインベストメント)  http://www.saza-investment.com/mt4/
GKFX(旧王子証券)           http://www.gkfx.jp/
セントレード証券             http://www.centrade.co.jp/fx

▼国内 MT5 採用ブローカー 2013
日産センチュリ証券           http://www.nc-sec.co.jp/meta5/
7Trader@Live!:2013/12/09(月) 12:02:23.66 ID:i/v2v4ze
>>6
マネックス証券 http://www.monex.co.jp/

>>1
8Trader@Live!:2013/12/09(月) 20:19:12.02 ID:2+J7dYli
自動売買用のwindows VPSを検討しています。

Webkeepers
http://winvps.webk.net/

お名前.com(Hyper-Vプラン)
http://www.onamae-server.com/vps/hyperv/

価格的には「Webkeepers」なんだけど、「CPUリソース13%(バリュー)」というのが気になっています。
リソース13%という事は、処理速度も当然遅くなると思うのですが、実用上問題ないレベルなのか
自動売買には使えないレベルなのか知りたいのですが、どなたか分かりませんか?
9Trader@Live!:2013/12/09(月) 23:17:17.87 ID:b9Teauog
MT4にあるインジの件です
ATRのカスタムインジケータについて教えてください。
if(counted_bars<1) for(i=1;i<=AtrPeriod;i++) AtrBuffer[Bars-i]=0.0;
の箇所があるのですが
counted_barsが1より小さい条件はcounted_barsが0の時と考えて差し支えないですか
上記部分の意味を教えてください。0.0というのもピンとこないです。
よろしくお願い致します
10Trader@Live!:2013/12/09(月) 23:40:58.74 ID:1gGd2Jr/
差し支えないでしょう

ピンとこないの意味がわかりませんが
まぁ、初期化でしょうね
11Trader@Live!:2013/12/10(火) 23:49:11.21 ID:44c4jk1D
>>1 乙乙です

どこかに Drawing styles(描画スタイル)について
詳しく書いているHP有りませんか? 書籍でも良いです。
EAでトレンド等を引きたいんですがまったくわからんのです。
12Trader@Live!:2013/12/12(木) 14:22:22.78 ID:VtHb46wL
csvファイルのデータをインジに読み込む際のデータ形式について
日付
2013/12/9
価格
102.56
・・・
とするか
日付&2013/12/9
価格&102.56
・・・
とするかで迷ってますが、どっちが良いでしょうか。
13Trader@Live!:2013/12/12(木) 14:26:46.13 ID:14OgEIOq
>>12
日付,価格・・・
2013/12/9,102.56・・・
14Trader@Live!:2013/12/12(木) 14:36:59.83 ID:VtHb46wL
すいません。列方向だと256列のエクセルだと溢れちゃうので
どっちかでお願いします。
15Trader@Live!:2013/12/12(木) 14:49:56.56 ID:14OgEIOq
>>14
設定値なら>>12の2個目。
履歴データなら>>13かと。
16Trader@Live!:2013/12/12(木) 14:54:35.38 ID:VtHb46wL
>>15
ありがとうございました!
17Trader@Live!:2013/12/12(木) 15:03:36.36 ID:14OgEIOq
>>16
区切り文字はご自由に、cvsだから「,」がいいけど。
18Trader@Live!:2013/12/12(木) 23:42:17.34 ID:85XOSEVy
>>10
どうも有難うございました。
19Trader@Live!:2013/12/13(金) 00:42:00.01 ID:wYMMKubp
DLLのCソースにRSIのインジケータを移行させています。
MT4に付属のRelativeStrenghIndexと同等のものを作りたいと思ってますが。
どうやら、RelativeStrenghIndexは、値下がりの幅と値上がり幅に対してSMMAを計算させて
それを元にRSIを計算させているようです。
豊嶋先生の本にある計算法を参考に、以下のように書いてみましたが、
RelativeStrenghIndex と 同値になるまでには200本ほどバーを経過しなければならないみたいです。
そこで、アルゴリズムとc言語に得意なみなさん。どうかこのソースを改良していただけないでしょうか。どうぞよろしくお願いします。
20Trader@Live!:2013/12/13(金) 00:45:58.52 ID:wYMMKubp
MT4_EXPFUNC double __stdcall MyRSI(
int bars,//最新のバーの本数
double close[],//closeの配列(時系列ではない)close[bars]が最新の終値
int RSI_Period){
double ret=0;
static double BufPos[RSIPERIOD_NUM];
static double BufNeg[RSIPERIOD_NUM];
static double BufPosSMMA[RSIPERIOD_NUM];
static double BufNegSMMA[RSIPERIOD_NUM];
double sumpos=0;
double sumneg=0;
double positive;
double negative;
double rel = close[bars-1]-close[bars-2];
for(int i=RSI_Period-1; i>=0; i--){
if(i != 0){
BufPos[i] = BufPos[i-1];
BufNeg[i] = BufNeg[i-1];
}
else if(i == 0){
if(rel>0) {
BufPos[0] = rel;
BufNeg[0] = 0;
}
else {
BufPos[0] = 0;
BufNeg[0] = -rel;
}
}
}
21Trader@Live!:2013/12/13(金) 00:48:23.02 ID:wYMMKubp
if(bars < RSI_Period){
for(int i=RSI_Period-1; i>=0; i--){
sumpos += BufPos[i];
sumneg += BufNeg[i];
}
BufPosSMMA[0] = sumpos / RSI_Period;
BufNegSMMA[0] = sumneg / RSI_Period;
}else{
double a = 1.0/(RSI_Period+1);
BufPosSMMA[0] = a*BufPos[0] + (1-a)*BufPosSMMA[1];
BufNegSMMA[0] = a*BufNeg[0] + (1-a)*BufNegSMMA[1];
positive = BufPosSMMA[0];
negative = BufNegSMMA[0];
}
BufPosSMMA[1] = BufPosSMMA[0];
BufNegSMMA[1] = BufNegSMMA[0];
if(negative == 0) ret = 0;
else ret = 100.0 - 100.0 /(1+positive/negative);
return (ret);
}
22Trader@Live!:2013/12/13(金) 16:45:37.95 ID:+OfES7ZR
>>19

「究極スレ」から来たけど、こっちはあんまり人気がないねぇ。

で、RSI の話だけど、その前に、SMMA とか EMA の計算について。
現在の SMMA を計算するのには、1つ前の SMMA が要るよね。
で、その一つ前の SMMA を計算するには、さらにもう1つ前の SMMA が要る。
そうやって、どんどん遡ってくわけだけど、どこまで遡る必要がある?
ヒストリカルデータが 10万件あったら、10万件前まで遡るの?
では、ヒストリカルデータの最初の 1万件の位置で SMMA を計算させるとして10万件前まで遡れる?
無理だよね。どうがんばっても 1万件前までだ。

要するに「ヒストリカルデータの最初まで遡る」ことにこだわったところで、
所詮、厳密な SMMA の計算はできないってこと。
だったら、もう遡る期間をあらかじめ絞ってもいいんじゃないかな。
例えば、3期間 SMMA なら、その 10倍の 30期間前からとかね。

じゃ、MT4 の iMA関数だけど、SMMA や EMA の計算に、いったい何期間前まで遡るように決めてるのかって話。
これは、わからない。わからないから、iMA() の SMMA も同じ値が出せない。
よって RSI も同じにならない。

「ソースを直して」って話だけど、MT4 の iMA() が SMMA の計算をどうやってるのか
中身がわからないと手が付けられないよ。
23Trader@Live!:2013/12/13(金) 17:09:57.35 ID:huCDuEZb
MT4は増えた分の足だけ計算してるんだよ。
そもそもなぜRSIをDLLでやろうと思うんだろう...
24Trader@Live!:2013/12/13(金) 18:28:34.33 ID:huCDuEZb
EMAに限らないけど、漸化式を使えば直前の足のデータだけで正しく
計算できるってことね。何本さかのぼるとかしなくても。
25Trader@Live!:2013/12/13(金) 21:32:57.33 ID:+OfES7ZR
一つ例を出そう。

for (i=0;i<1000000;i++) {
  shift = MathRand()+1;
  period = MathRand()+1;
  r = ema(period,shift);
}

欲しいのは今から shift 本前の、period 期間の EMA 値。
shift も period も連続しないバラバラな値をとる。
この ema関数の中身はどうコーディングすればいい?
あと 100万回呼ぶから、処理速度も速くしてね。

-----

MT4 の iMA() 関数の EMA (あるいは SMMA) 計算に要求されるのはこういう処理。
ヒストリカルデータの先頭から、常に同じ期間の EMA値を順番に求めればいいという話ではない。
iRSI() 関数も同じ。でもこれは、iMA の処理に依存してるでしょう。
26Trader@Live!:2013/12/13(金) 21:34:37.95 ID:huCDuEZb
そういえば>>20を見て思ったんだけど、EAからiCustom()で呼ばれた場合って
スレッドはそのEAのになるのかな。それともメインスレッド?
多分EAのスレッドのままかなと思うけど、そうだとするとこういうコードは
スレッドセーフにしないとだめだね。
27Trader@Live!:2013/12/13(金) 21:36:43.79 ID:huCDuEZb
>>25
ほんと、根本的にわかってないのにエラそうだねぇ。
iMA()に限らず、計算は足あたり1回だけ。それで十分でしょ?
28Trader@Live!:2013/12/13(金) 22:21:44.79 ID:+OfES7ZR
>>27
ほう。
そこまで言うんなら、具体的に ema() 関数のコード示してくれないか。
29Trader@Live!:2013/12/13(金) 22:28:24.60 ID:huCDuEZb
態度が悪いのでお断り。
30Trader@Live!:2013/12/13(金) 22:59:02.31 ID:wYMMKubp
やっぱり、EMA/SMMAのプログラムは難しいね。
スレで気づいたけど、これは漸化式なんだよね。

ありがとう。参考になりました。
31Trader@Live!:2013/12/13(金) 23:45:16.80 ID:huCDuEZb
SMAなんかでも漸化式使えば計算量は大幅にへらせる。
32Trader@Live!:2013/12/14(土) 00:17:59.56 ID:knQrz/W9
トレンドラインを水平に引いたとき、
ラインに設定した値と、ラインにカーソルを当ててポップアップされる値(ObjectSetTextで変更される所)が
ずれてしまうのですが普通の事ですか?
33Trader@Live!:2013/12/14(土) 01:14:41.63 ID:+IMsPtYf
>>huCDuEZb

君は究極EAスレの 725 の人かな?
じゃ、俺も態度を改めるから、まじめに話しよう。

まず、24 で漸化式と言ってるけど、その式はこれでいいかな。

EMA[i] = (1-α) EMA[i+1] + α*Price[i] (0<=α<=1)

でも、この式が使える条件は一つ前のデータ、つまり EMA[i+1] がわかっていることが前提でしょ。
で、25 で ema() 関数って例を出したのだけど、この関数を呼び出す時に
ema(period,99) , ema(period,98) , ema(period,97) , … ema(period,0)
のように、shift の値が順にデクリメントされていくのであれば、
前の EMA値1つだけを static 領域にセーブしておけばいい。
だけど、実際にはこの shift はランダムで動いている。
漸化式を使って計算 ということなら EMA[shift] を計算する際に、 EMA[shift+1] の値は、
常に static なバッファーにとっておかなくてはならない。ヒストリカルデータが Bars 個あるとして、
shift が 0〜Bars-1 の間をランダムに動くのなら Bars 個のバッファーが必要になるよ。
それに加えて period も動く。漸化式を使って計算するなら、3期間 EMA[shift] の値を求めるには
3期間 EMA[shift+1] が必要でしょ。仮に period 値も 0〜Bars-1 動くのなら
トータルで Bars * Bars のバッファーが必要ということになるけど、これは物理的に無理じゃないか?
それに period の値は αの計算に要るだけで、SMA のように整数値である必要はない。
ほんとは実数値だって構わないわけだ。となると、もう shift と period の組み合わせは無限にあるよ。
これを とっておくというのは、もう不可能でしょう。
だから、iMA() での EMA や SMMA計算に、漸化式を使っているとは思えないわけよ。

じゃ、どうするかっていうと、この漸化式を解いてやらねばならない。
で、それをここに記そうと思ったが、、、、すまん挫折した。
だけど、その式の項に Price[i] , Price[i+1] , … , Price[i+k]  (k=0〜∞)
が出てくるのは想像できるでしょう。 さらに、Price[i+k] で k が大きいほど、この Price[i+k] に
かかる係数が 0 に近くなることも想像できる。 で、実際問題 k が ∞ まで遡るってのはありえない。
ならば、k はどこかで切ってしまえばいいというのが、22 で言ってる「何期間前まで遡る」という話。
では、具体的にどうコーディングするかっていうと、
Price[i+k] を初期値とし、これを EMA[i+k] とおいて、あとは、漸化式を k 回繰り返して
EMA[i] まで計算していくという方法。

繰り返しになるけど、「漸化式を使えば計算回数が【1回】(重要だから強調)で済む」というのは、
period を変えず、かつ、shift が順にデクリメントされるのが前提じゃないか?
で、21 のコードはまさにそのとおり。
だけど、iMA() や iRSI()は、period と shiftに飛び飛びの引数を与えても値を返してくる。
となると「漸化式を使えば計算回数が1回で済む」というコードではないはずだよ。
なら、どうするっていうと、上で述べたとおり、漸化式を k回繰り返すって方法が妥当かと思うわけ。
だから、iRSI() のコードは、21 のコードとは違うはずだし、結果も誤差が出てくるはずだというのが俺の主張。

これで理解してもらえただろうか。
3419:2013/12/14(土) 01:39:20.05 ID:ywl69Iqr
や。これは分かりやすい。ありがとうございます。まだちゃんと読み返さないといけないけど。
ちなみに20-21のコードは、豊嶋本の[MyRSI.mql][MyEMA.mql]というコードを無理やりくっつけた。w
(自分のソースの問題は、ちょっとこれとは別なところにあったと後で気づいたのだけど。)

>だけど、iMA() や iRSI()は、period と shiftに飛び飛びの引数を与えても値を返してくる。
そうですね。漸化式とは違う方法ですね。

ちなみに、iMA()とMovingAverage, iRSI()と RelativeStrenghIndex は同じ計算式なのか
わかりますか?
3519:2013/12/14(土) 01:47:30.17 ID:ywl69Iqr
あごめんなさい。わかりずらいですね。
iMA()でソースコードにうちこむ関数の計算式と、チャートにメニューから挿入したMovingAverageの計算式
iRSI()でソースコードにうちこむ関数の計算式と、チャートにメニューから挿入したRelativeStrenghIndexの計算式
は同じかご存知でしょうか?
36Trader@Live!:2013/12/14(土) 01:53:11.72 ID:Zu/z+L3g
まさに。

知る者は言わず言う者は知らず・・・(老子
37Trader@Live!:2013/12/14(土) 03:00:13.87 ID:dbiWGbWI
わざわざ自分でRSIを作ったのか
code baseからmetaquotesのソースをダウンロードすればそれでOKだったような
で、改良というのは「200本程度の助走期間が無駄に思えるので効率的な方法はないですか?」
という意味でいいのかな。そこははっきりさせたほうがいいと思う。
直感ではEMA,SMMAを使うならそれは諦める …になってしまう。
そもそもRSIはSMAが一般的でしょうから、metaquotesはなんでSMMAにしたんだろ。
38Trader@Live!:2013/12/14(土) 03:12:58.35 ID:dbiWGbWI
code base内で迷子になってもいけないからRSIはここね
http://codebase.mql4.com/263
39Trader@Live!:2013/12/14(土) 03:24:14.68 ID:nU89uZjl
> iMA() や iRSI()は、period と shiftに飛び飛びの引数を与えても値を返してくる。
> となると「漸化式を使えば計算回数が1回で済む」というコードではないはずだよ。


MT4の iMA で 特定のperiod と shiftでEMAを計算すると、
初回の呼び出しでは計算時間が掛かるけど
それ以後は、計算済みデータを使って漸化式で求めるから速いぉ
4033:2013/12/14(土) 05:25:07.52 ID:+IMsPtYf
ああ、ちょっと補足

>では、具体的にどうコーディングするかっていうと、
>Price[i+k] を初期値とし、これを EMA[i+k] とおいて、あとは、漸化式を k 回繰り返して
>EMA[i] まで計算していくという方法。

「漸化式を解いて」といいながら、解けなかった俺は、ちゃっかり漸化式使ってるけど、
iMA() の中は、ちゃんと漸化式を解いたコードかもしれないし、
実は解かずに、ちゃっかりと漸化式を繰り返し使ってるだけかもしれない。
それはコード見ないとわからないのだけど、いずれにしても「k 本分遡った」位置から
Price[i+k] を参照する必要があるという点はどちらも変わらない。

あと、k はいくつにすべきかという点だけど、それもやはり iMA() のコードを見ないとわからない。
ここから先は、全て想像の域だけど、仮に「漸化式を繰り返す」方法を使っているなら、
k=period とし、初期値の EMA[i+k] を sma(period,i+period) で計算しておき、
以後 period 回の 漸化式を繰り返して EMA[i] を計算しているかもしれない。
しかし、この場合、2*period 分の Price が必要となるわけで、それならいっそ k=2*period とし
初期値の EMA[i+k] は Price[i+k] のままにしておいて、2*period 回の漸化式を繰り返しているかもしれない。
まあ、いずれにしてもここはもう想像の域を出ないけどね。

>>34
> ちなみに、iMA()とMovingAverage, iRSI()と RelativeStrenghIndex は同じ計算式なのか
> わかりますか?

同じではないと言えるでしょう。

MovingAverageの方は、editor ウィンドウの indicators の中に mq4 ソースがあって
これは、漸化式を1回だけ計算するタイプで、1つ前の ema の値は ExtMapBuffer[] という
static なバッファーに蓄えられている。

RelativeStrenghIndex の方は、editor ウィンドウの indicators では RSI.mq4 だけど
(多分 38 が示してくれた Code Base のやつと同じだと思う)
このソースが RelativeStrenghIndex なら、やはり漸化式を1回だけ計算するタイプで
一つ前の値は PosBuffer[] , NegBuffer[] に蓄えられているよ。

>>37
>そもそもRSIはSMAが一般的でしょうから、metaquotesはなんでSMMAにしたんだろ。

元々 Wilder が作ったオリジナル RSI は SMMA を使ってたらしい
参考
ttp://www.drnoxu.com/article/122037363.html
↑は EMA って書いてあるけど SMMA も EMA も本質は同じだし。

>>39
なるほど。
iMA() は 前回呼ばれた時の period と shift を記録しており、
次ぎに呼ばれた際 period が同じで shift が 1つ小さい値だったら、
漸化式を1回使う高速計算に切り替えているのかもしれない。

さらにさらに、period と shift とその時の ema 値という組あわせを
何組も記録しておけば、前回呼ばれた period でなくても漸化式が使えるね。
これなら ema(5,i) と ema(25,i) を交互に呼び出すようなコード書いても高速化できる。

まあ、そうなると、漸化式1回だけ使う のと k回遡る のとが混在することになるけど
もうその誤差は黙殺してもいいのかもね。
41Trader@Live!:2013/12/14(土) 05:39:09.11 ID:dbiWGbWI
> 元々 Wilder が作ったオリジナル RSI は SMMA を使ってたらしい
> ↑は EMA って書いてあるけど SMMA も EMA も本質は同じだし。
http://en.wikipedia.org/wiki/Relative_strength_index もEMAになっていますね
SMAはCutler's RSIというバリエーションとして紹介されているだけ
なのでSMAが一般的というのは取り消します
4219:2013/12/14(土) 11:21:54.04 ID:ywl69Iqr
>>40
>MovingAverageの方は、editor ウィンドウの indicators の中に mq4 ソースがあって
>これは、漸化式を1回だけ計算するタイプで、1つ前の ema の値は ExtMapBuffer[] という
static なバッファーに蓄えられている。
なるほど、ありがとうございました。

>>37
>そもそもRSIはSMAが一般的でしょうから、metaquotesはなんでSMMAにしたんだろ。
このコード>>20最初はSMAで作っていたんですけど。
SMAだと、上昇トレンドがつづくとき下降幅のSMAが0になるときがあります。
とすると、RSIの式より分母が0になること、いわゆる0割が発生することがあるのです。
ですので、少しでも数値が残るSMMAがプログラムのうえでも優良なのではないか。
と思いました。
43Trader@Live!:2013/12/14(土) 12:05:06.20 ID:Sg3b4kfz
おおぉー 過去の自分と同じ考え方の人がいてびっくりしたぞぉい

ID:+IMsPtYf 氏のおっしゃる通り、
iMA()が内部にEMA[i+1]を保持する、Staticな領域を持つことはあり得ない。

俺も、漸化式の最終項のみ計算すりゃ速いジャンと自前で関数を作ろうとした。
が、現実的でないことに気付いてやめた。
仮に計算の途中経過EMA[i+1]を内部に保持するMyiMA()を作ったとしても、異なる計算期間で
別のEMAを求めるMyiMA()を呼び出すと、Static領域に保存された以前の情報が壊されて
次回の計算が狂ってしまうんだよね。(ココ、まったく同感)

現実のiMA()はパラメータを変えてランダムにコールしてもそんなことにはならないから、
関数内部に計算経過を保持して最後の1回だけ計算する‥ なんてことはあり得ない。
与えられたパラメータごとに異なるStatic領域なんて用意できないでしょ。
毎度まいど、バカ正直にループを回すしかない。

2回目の計算からは速いから漸化式だ‥というのは間接的すぎて傍証にもならない。
(たとえばCPUキャッシュの影響)

ID:huCDuEZb 氏は、実装を視野に入れず、机上の空論だけで最終項のみの計算で速くなると考えたのだろう。
或いは汎用性のない、極めて限定された使用方法を前提に関数を設計するか‥
「態度が悪いからコードは示せない」「余白が狭いから証明は書けない」… はぁ〜?って感じ

話変わるけどiCCIOnArray()ってすごくトロい関数で、配列の要素数(=チャートのBar数)が増えて
計算期間が長めになると結果がでるのに時間かかるのな。
仕方ないから式を調べて自前で関数を書いたら激速になった。
iCCIOnArray、お前、いったい内部で何やってるのか!と小一時間...
44Trader@Live!:2013/12/14(土) 17:40:25.03 ID:Zu/z+L3g
えらい言われようだな、しかし。
ほんと、口が達者なやつには感心するよ。
クソEAで詐欺る側と詐欺られる側の共通ポイントだよね。

iMA()とか1つ呼べばそのバッファが確保されるんだよ。
パラメーターが変われば別のバッファが用意される。
それぞれ最初に呼ばれた時点でBarの数だけすべて計算する。
Barが増えれば増えた分だけ計算。
こんなのiMA()を使いながらメモリ使用量見ればわかるでしょ。
つまり、100万種類もパラメーターの違うiMA()は読んでもエラーになる。
ただし、上で言ってるshiftは関係ない。上の例で言えばperiodの数だけ。
45Trader@Live!:2013/12/14(土) 17:47:07.56 ID:nU89uZjl
>>43
> 与えられたパラメータごとに異なるStatic領域なんて用意できないでしょ。
> 毎度まいど、バカ正直にループを回すしかない。

EAから iCustom を呼び出した時の挙動はご存知ですか?

iCustom に与えたパラメータごとに異なる Static領域が用意されていますが。
46Trader@Live!:2013/12/14(土) 18:00:57.77 ID:Zu/z+L3g
>>45
iCustom()で呼んだ場合はメモリの使用状況によるのかわからないが
同じパラメーターでも新規にインスタンスが生成されることがあるね。
それでEAのバックテストが劇遅になることがある。
47Trader@Live!:2013/12/14(土) 18:15:38.05 ID:Wt2pmH4D
究極のスレ から来たました。

ちょっと訊きたい。
>>44>>45 はiMA()と、MovingAverage の計算式は同じという認識でもOK?
つまり、indicatorディレクトリのなかのmqlファイルの計算式をみれば、それがiMAの計算式そのものだとー。
48Trader@Live!:2013/12/14(土) 18:20:52.18 ID:Zu/z+L3g
組み込みのMAはperiodに制限があったり特殊なことができtりするんで
厳密には違ってもおかしくないが、同じと考えても何も問題ないのでは。
何を気にしてる?
49Trader@Live!:2013/12/14(土) 18:24:46.46 ID:Wt2pmH4D
結局の疑問は、漸化式なのかそれとも、別な式なのか。につきる。
50Trader@Live!:2013/12/14(土) 18:29:37.26 ID:Wt2pmH4D
あれ。そういう話じゃなかったけ?
違ったらすまん。
51Trader@Live!:2013/12/14(土) 20:04:28.04 ID:Sg3b4kfz
>>44
よし、わかった。
憶測や想像で話してても不毛なんでこうしよう。

確かに43に書いた「前回の結果を内部に保持して最終項のみを計算する実装はあり得ない」は俺の想像だ。
iMAのソースコードを見たわけじゃないからね。

そこで別の質問なんだが

> iMA()とか1つ呼べばそのバッファが確保されるんだよ。
> パラメーターが変われば別のバッファが用意される。

iMA()はこのように実装されていることが事実、という根拠を教えてもらえないか。
52Trader@Live!:2013/12/14(土) 20:08:45.63 ID:Zu/z+L3g
なんで何も知らないくせにこうも上から目線なんだろうね。
メモリ使用量みりゃわかるだろ。
iMA()1つ使ったらバーの数×sizeof(double)増えるだろ。
53Trader@Live!:2013/12/14(土) 22:09:36.71 ID:UQFkg/q5
PERIODだけじゃすまんわな。
SYMBOL , TIME_FRAME , あと applied_price もあるか。
それらが変わる度にでかいバッファーとって、
要求もしてない値をBars の頭から全部計算ってことだろ。
それが MT4 の iMA の真実だとして、
そんな狂気じみた途方もない実装をとても想像しえなかったわ。
iMA がこんなだってことは、iRSI も同じなんだろう。
他にもきっとうじゃうじゃあるだろうな。
それを今まで平然と使ってたのかと思うと戦慄すら覚えるわ。
VPS 上での運用考えてる人は気に留めといた方がいいだろう。
自分も 19 を見習って、無駄なメモリ取らない
インジ関数を自分で作ることにするわ。
54Trader@Live!:2013/12/14(土) 22:14:14.90 ID:Zu/z+L3g
オプションでバーの数減らせばいいだけだろうに。
メモリ使用量も見ずに使ってたのか?
まぁそうだとしても動いていたのは今時大した問題でもないってことだろ。
55Trader@Live!:2013/12/14(土) 22:56:43.07 ID:UQFkg/q5
>オプションでバーの数減らせばいいだけだろうに。

減らすとバックテストで困るから、テスト用のは減らせない。
VPS 上に持っていくときは留意するよ。
56Trader@Live!:2013/12/14(土) 23:10:48.62 ID:Zu/z+L3g
減らしてもバックテスト自体はできる。
結果チャートを開いた時に指定本数までしか見えないだけで。
5719:2013/12/14(土) 23:28:09.14 ID:ywl69Iqr
ほんと、知らないことばかりで勉強になります。
インジをDLLに移行させているのは、計算速度が気になったものですから、
メモリに関してはまったく無頓着でした。
実際の計算はPeriod分のバッファだけで済むから、ただそうしただけで、、。
これがメモリに対しても効率的だとは思わなかったです。
58Trader@Live!:2013/12/14(土) 23:59:08.34 ID:Sg3b4kfz
>>52
いくら言い張っても物証がないなら無意味。
好き勝手だったら誰でも何でも言えるからね。

プロセスのメモリ使用量の変化がすべてiMA()がアロケートしたバッファであり
そのメモリ中にはEMA計算の途中経過が保存されている…
これが事実だと言いたいなら、裏付ける直接証拠を出さないと何も知らない俺とレベルは変わらんのよ。
空想ではなく、もっと有意な情報を示せってことです。
そうでなきゃこれ以上に推測を繰り返しても不毛。
59Trader@Live!:2013/12/15(日) 00:05:49.53 ID:Zu/z+L3g
そうだな、まぁがんばれよ。
60Trader@Live!:2013/12/15(日) 00:10:49.33 ID:xWdf2u5G
>>58
EMAの期間を1万期間ぐらいにして、
iMA で掛かる計算時間と、C++のDLLで掛かる計算時間を比較したことがあるんだけど、
その結果は、iMA はEMA計算の途中結果を保存して利用しているとしか思えない速さだったよ。
61Trader@Live!:2013/12/15(日) 00:14:39.80 ID:2wN47VVE
>>60
何回も同じこと言うけど、最初の呼び出しでBarの数分のdoubleの
バッファにEMAが全部計算されるんだよ。で、tickが更新されるたびに
最新のEMAがバッファに既に計算されてる直前の値を使って漸化式で
最新の値が更新される、と。
まぁおれの妄想だけどな。
62Trader@Live!:2013/12/15(日) 00:16:21.15 ID:2wN47VVE
漸化式を使えばSMAだろうがEMAだろうが、期間の長さによらず一定の時間で
計算できるからまぁ普通はそうするだろうね。妄想だけどwww
63Trader@Live!:2013/12/15(日) 00:24:00.08 ID:xWdf2u5G
というか、漸化式を使わない実装のほうが、狂気じみた途方もない実装だよねw
64Trader@Live!:2013/12/15(日) 00:29:16.51 ID:2wN47VVE
でも漸化式版が正しく実装できているかの確認には使うから実装はするね。
まぁめんどくさいと時間が問題にならないならそのまま使うこともあるけど、
バックテストするなら前科版実装するよね。
65Trader@Live!:2013/12/15(日) 00:29:59.80 ID:2wN47VVE
漸化式版ね。
66Trader@Live!:2013/12/15(日) 01:04:36.59 ID:2wN47VVE
なんだこいつwww
あまりの言葉使いの違いにチビったwww
http://hissi.org/read.php/livemarket2/20131214/U2czYjRrZno.html
67Trader@Live!:2013/12/15(日) 01:06:29.91 ID:2wN47VVE
と、思ったがきっとID被りなんだろうなwww
68Trader@Live!:2013/12/15(日) 02:00:03.73 ID:8TBh3URV
もしかして、呼び出し1回目に Bars 分のバッファ作って、価格に対する値を全部計算っての
漸化式を取らない関数であってもやってたりする?
まさか i で始まる関数が全てこんなのってことないよね?
69Trader@Live!:2013/12/15(日) 02:09:45.77 ID:2wN47VVE
漸化式を取らない関数って? iHighestとかのこと?
少なくともEAで使ってバックテスト後に開いたチャートに表示されるものは
全部同じタイプでは。中で漸化式を使ってるかどうかとは関係なく。
7019:2013/12/15(日) 02:52:17.13 ID:9MW5b80f
自分あほなのでまとめてみます。

漸化式を使ったiXX() チャートに実行された時点で最初のバーから計算する。
ただし、次のバーからは前のバーを利用して計算する。
モードや対象期間が変わればそのつど、最初のバーから計算しなおす。
メモリは1バーずつ増える。

漸化式を使わないiXX() バーが進む度に全計算を最初からやりなおす。
モードも対象期間も、全て含めて全計算をバーが進むたびに計算する。
メモリは?

これは、さすがに、、
誤解しているところあれば指摘してください。

バックテストで、最初だけ早くて後になると急に遅くなるインジって、、。
71Trader@Live!:2013/12/15(日) 03:32:43.50 ID:8TBh3URV
>>69

ああ、、じゃMT4 はそういう設計思想ってことなんだね。
呼ばれた最初でBars 分全部計算しておいて、あとは参照されるだけという方法が。

考えたみたら、ユーザが作るカスタムインジも最初の呼び出しで Bars 分全部計算しておいて
あとは差分というか bar が増える分だけ、計算を足してくわけだし。
MT4 に最初から入ってるインジとやり方は統一されてるわけだね。
メモリの効率の悪さについては、まだ納得はできないけど、
ユーザのカスタムインジと同じと考えると、この計算方法は納得がいった。

あと、iCustom。
いままでの話からして、mode と shift 以外のパラメータをいじらない限り、
ユーザインジへの呼び出しは最初の1回だけで、2回目以降は、ユーザインジ内で
SetIndexBuffer で作った buffer を参照してるだけなんだろうね。
これ以外のパラメータ変えると、またユーザインジを呼び出して buffer も追加してってところだろうか。
今ままで、iCustom の動きを真剣に考えてこなかったけど、今になってああこういうことかと気づいたよ。。
なんで、今まで検証してみようと思わなかったんだろう ..... orz
72Trader@Live!:2013/12/15(日) 08:20:44.20 ID:SoaHYPHD
漸化式を使わなくてよい計算式も、差分だけ計算すればいいし。
漸化式を使う必要がある計算式も、前のバーとの漸化分を計算すればいいだけだし。
結局は差分を計算すればいいというロジックが自然だね。
73Trader@Live!:2013/12/15(日) 09:59:36.75 ID:2wN47VVE
>>70
iXXX()とかカスタムインジごとにバッファは確保される。漸化式を使うか
どうかとは関係ない話。
各インジはBar-IndicatorCounted()の部分を計算するのがお仕事。
漸化式はその部分の計算でそれを使うかどうかということ。
>>71
iCustom()で呼び出した場合、>>46のような現象もあった。最近のビルドは
知らんが。
74Trader@Live!:2013/12/15(日) 10:01:27.17 ID:2wN47VVE
>>70
バックテストで最初だけ速いのはIndicatorCounted()を見ずに無駄に必ず
全ての足を再計算するタイプのインジがあった場合だね。
バックテストではBarsの初期値が1000なので遅くなり具合が線形に近い。
75Trader@Live!:2013/12/15(日) 16:22:17.99 ID:/caMGu0i
>>175
さすが同胞、よくわかってるですよね
劣等民族がASEAN首脳を金で呼び寄せてクールとか笑わせます、KPOP最強ですよ
【劣等民族がなんか言ってるぞ】クールジャパンを世界輸出する日本「日本の誇りはAKBとAV(笑)」「韓国に劣等感」「自然発生の韓流には勝てぬ」
76Trader@Live!:2013/12/15(日) 17:03:37.41 ID:si3dkyhZ
>>73
ああ、46 でインスタンスと言ったのは、こういうことか。

・カスタムインジはオブジェクトのクラス定義のようなもの。
チャートウィンドーにドロップされるか、iCustom から呼ばれると、インスタンスとして実体を持つ。
・SetIndexBufferで獲得したバッファーはインスタンス毎に独立しており、最初 Bars 分確保される。
 以後 bar が増えると、自動的に拡張される。
・iCustom は インスタンスとやり取りするインターフェイス
mode と shift で SetIndexBufferで獲得したバッファーを参照する
新たにインスタンスを生成する必要があるかどうかも、これが判断して自動的にやってる。
・iXXX() は iCustom と インスタンスの組合わせに、 XXX という名前を付けたようなもの。

こう考えたら、なにもかもがすっきりした。
33 では、iXXX() を、ただの関数であるとの前提で話してるから、いろいろかみ合わなかった。
77Trader@Live!:2013/12/15(日) 18:16:44.65 ID:2wN47VVE
気持ち悪いやつだな...
自分の空想をさも現実かのように語ってたかと思えば>>58では
直接証拠がなければ無知な自分と同じだと言っておいてこれか。
ほんと、気持ち悪い。
次からはちゃんとコテつけろよ。
7833:2013/12/15(日) 19:21:21.42 ID:si3dkyhZ
俺は >>33

>>33 >>40 >>68 >>71 >>76 が俺
>>58 は別の人
79Trader@Live!:2013/12/15(日) 19:28:50.76 ID:2wN47VVE
あぁ、そうか。
思い込み具合が同じだったんで同じかと思ったよ。
80Trader@Live!:2013/12/15(日) 21:48:10.02 ID:zztVGLe1
マルチタイムフレームのインジを作るには
たとえば移動平均ならiMA(string symbol, int timeframe・・・
を使って任意の時間足の値をゲットするのが簡単だと思います

しかしこのような組み込み関数が用意されてない指標の場合はどのように
計算したらいいのでしょうか?

自分なりに
今チャートのPeriod()が5分足なら期間を480にする(=日足100日を求めたい)
というような条件を一つずつ作ってやってみましたが
期間が長くなるとかなりモッサリ重たくくなってきます

何か賢い方法あるのでしょうか?
81Trader@Live!:2013/12/15(日) 22:13:14.66 ID:xWdf2u5G
>>80
iCustom を使う
82Trader@Live!:2013/12/15(日) 22:46:22.30 ID:zztVGLe1
>>81
ありがとう!!やってみます
83Trader@Live!:2013/12/17(火) 10:05:26.17 ID:5PNbv0au
インジについて質問です。お願いします。
http://u3.getuploader.com/mt/result/52afa238-26c4-472d-b5e5-36deb63022d0
乖離線で2点を指定してラインを引くインジを作ってみたのですが、1分で動作確認したところ、時間がたつとラインがどうしてもずれてしまいます。
時間がたってもラインが延長されるだけという動作をしたいのですが、どうしたらいいでしょうか。
84Trader@Live!:2013/12/18(水) 12:04:12.05 ID:exwvHwlf
日足が5本とか6本とか業者の違いでどんな影響があるんですか?
85Trader@Live!:2013/12/18(水) 12:16:08.27 ID:wjhgsDtG
どの国も株式市場は週5日、連動する為替も週5日と考えた方がいい
6日と扱うとテクニカルがいろいろズレル
86Trader@Live!:2013/12/18(水) 18:47:48.04 ID:7efxa4l/
成り行きでエントリーしたポジションを決済するEAを作ったのですが、そのEAを履歴で判別する為にヒストリープールのコメント欄にコメントを残すことはできますか?
マジックナンバーとコメントを注文後に変更することができるか調べていて、マジックナンバーはあとから変更不可とわかったのですが、コメントを後からつけられるのかがわかりません。
87Trader@Live!:2013/12/18(水) 18:56:58.18 ID:dqVarRcW
変更できないし、サーバーによっては書き換えられることもある。
88Trader@Live!:2013/12/18(水) 21:03:24.16 ID:7efxa4l/
>>87
ありがとうございました!
89Trader@Live!:2013/12/18(水) 23:59:08.98 ID:xQ2WSdCx
海外業者ならほとんど日足5本?
90Trader@Live!:2013/12/19(木) 18:56:35.85 ID:qDwDLVcQ
91Trader@Live!:2013/12/20(金) 19:12:20.64 ID:12d9GNjC
MT4から、DLLに配列を引数をつかって渡せますか?
確か。mqlはポインタの概念がないと思ってましたが。
92Trader@Live!:2013/12/20(金) 19:14:08.37 ID:12d9GNjC
おっとDLL はC言語でかかれてます。
93Trader@Live!:2013/12/20(金) 19:21:09.14 ID:k9wG0BkK
だいたいそのまま渡せる。
94Trader@Live!:2013/12/20(金) 19:27:54.09 ID:12d9GNjC
ありがとうございます。
参照渡しでしょうか?
つまり、ポインタの概念はないけど、アドレスを渡してますか?
95Trader@Live!:2013/12/20(金) 19:34:09.72 ID:k9wG0BkK
配列名を指定すればポインタがわたる。
勘違いしてるやつが多いけど、これは値渡し。
96Trader@Live!:2013/12/20(金) 19:38:55.86 ID:12d9GNjC
値渡し!オーマイがっかり。
ありがとうございました。
97Trader@Live!:2013/12/20(金) 19:46:49.48 ID:k9wG0BkK
がっかりしなくてもお前のやりたいことはできるぞ?
だいたい、Cには参照渡しがないんだから参照で渡されても困るだろ。
98Trader@Live!:2013/12/20(金) 19:48:54.21 ID:12d9GNjC
Cに参照渡しはあるはず。
あれ?
99Trader@Live!:2013/12/20(金) 19:53:36.01 ID:12d9GNjC
とりあえず、mqlの仮引数に配列名 だけ書けば、それは配列の先頭アドレスを渡せるということでいいのよね?
100Trader@Live!:2013/12/20(金) 20:01:30.54 ID:k9wG0BkK
仮引数と実引数の区別もつかないのか。
実引数に書かないと渡せないだろ。

ゆとりなので同じ話は永遠につづく...
101Trader@Live!:2013/12/20(金) 20:09:41.86 ID:12d9GNjC
あいや。実引数だね。すいません。
で実引数に配列名だけ書けば、アドレスをDLLで受けとれる?
102Trader@Live!:2013/12/20(金) 20:11:04.08 ID:k9wG0BkK
最初にそう答えてるだろうに...
103Trader@Live!:2013/12/20(金) 20:16:28.73 ID:12d9GNjC
了解です。やっと理解しました。

でもう一つ質問なのですが。
二次元以上の配列も同じ仕組みで渡せますか?
104Trader@Live!:2013/12/20(金) 20:32:22.18 ID:kBYqzDJB
mql4側がint a[3][4]だとすると、受け側(DLL側)でhoge(int a[3][4])とか
hoge(int (*a)[4])とかhoge(int a[][4])とかすれば普通に受けられる。

ちなみに、実際はint* aで受けることもint a[][5]で受けることもできる。
メモリーイメージをちゃんとイメージできてるなら、こういう悪用がひょ
んなとこで役立つことも・・・・・・いや、あんまりないなw
105Trader@Live!:2013/12/20(金) 20:47:01.94 ID:12d9GNjC
ありがとうございます。
配列要素の数を動的に変えるのは多次元配列では難しそうですね。
ところで悪用ってなんですか?
106Trader@Live!:2013/12/20(金) 20:54:59.42 ID:k9wG0BkK
悪用は知らんが、realloc()相当ならArrayResize()でできる。
107Trader@Live!:2013/12/20(金) 20:55:10.14 ID:12d9GNjC
いや。俺が馬鹿だ。
前言撤回。
ありがとうございました。
108Trader@Live!:2013/12/20(金) 21:14:23.34 ID:12d9GNjC
>>104
ちなみに、実際はint* aで受けることもint a[][5]で受けることもできる。

メモリが壊れない?ですか?
109Trader@Live!:2013/12/20(金) 21:24:40.65 ID:k9wG0BkK
確保されてる領域外にアクセスしなければいいだけ。
110Trader@Live!:2013/12/20(金) 22:23:34.07 ID:kBYqzDJB
>>105
悪用ってのは多次元配列を配列のポインタで受けてファイルに書き出す
と入れ子のループを使う必要がないとか?

あとは文字列を返したい時、誰がそのメモリを確保して解放すべきか?
ってのがちょっと問題になる。
DLLのローカル変数はreturnで破棄されるんでダメ、静的ローカル変数
は複数のスレッドから同時期に呼ばれて再入されると上書きされて壊れ
るんでダメ。
っで、int a[64]を渡して、DLL側でchar* const aとかで受けて文字列
置き場に使って、return aで文字列を返すと安全。

ちなみに、DLLサンプルだとstring aを渡してchar* aで受けてreturn a
で返してるけど・・・あれは書き換えていいってサンプルなんだろうか?

壊れるか否かはどう弄ったかに依存する。
メモリイメージが壊れないように操作すれば壊れない。
111Trader@Live!:2013/12/20(金) 23:16:13.91 ID:k9wG0BkK
おれが知ってる悪用という単語とは何か違うものなのか。
112Trader@Live!:2013/12/20(金) 23:36:07.93 ID:NjBP1pqH
Android版のメタトレーダーて外部からのインジを表示できないんでしょうか?
できないとしたら何か別アプリなど代替手段あるんでしょうか
113Trader@Live!:2013/12/21(土) 00:26:48.97 ID:w8LQ7jqi
>>110

横からすみません

>複数のスレッドから同時期に呼ばれて再入されると上書きされて壊れ
>るんでダメ。

あるインジからDLLを呼び出した場合、そのDLL のスレッドは
インジと同じスレッドにはなれないのでしょうか?
114Trader@Live!:2013/12/21(土) 00:53:40.01 ID:d/g93Ygq
>>113
インジから呼ばれたDLL関数は勿論そのインジのスレッドで走る。
インジはMT4のUIスレッドで動いてるから、インジからしか呼ばれないと
分かってるDLL関数ならスレッドセーフ云々の心配はしなくていい。

問題になるのは、EAとインジや複数のEAから呼ばれる場合、共有される
変数はぶち当たらないように手当てが必要。
115Trader@Live!:2013/12/21(土) 02:04:56.89 ID:lIHcbmBD
バックテストするのに安いCPUファームみたいなのはないものか。
LinuxかWindowsが動けばいいんだけど、普通にVPSとかしかないのかな。
116Trader@Live!:2013/12/21(土) 14:03:40.52 ID:SKPADkVN
昨日からいろいろ考えたのだが。
インジケータのmqlなら、時系列配列利用して配列要素数の定義がフリーになりますよね。
これを、DLLに参照渡しで渡して、結果を返してもらえば、
実質要素数の事を考えずにデータのやり取りができたり。
いやただの妄想ですが…
117113:2013/12/21(土) 19:14:38.05 ID:5MEvYloA
>>114
丁寧な回答ありがとうございました。
118Trader@Live!:2013/12/21(土) 22:52:53.83 ID:ejPjXrNR
自分の知識に自信が持てなくなったので教えて。
Ask値とBid値の差がスプレッドだよね?
決済早いなぁと思ったらMODE_SPREDADで13何だけど、ASK-BIDで40なんだ・・・。
俺がバカで理解してないから?(´・ω・`)
119Trader@Live!:2013/12/21(土) 23:47:27.09 ID:b97S9EWB
>>118
良いことを教えてやろう。

理想と現実は異なるってことだ。

MODE_SPREDAD はサーバ側の設定っぽいので、
実態とは異なる値を示すことが多々あるので、当てにしてはいけない。
120Trader@Live!:2013/12/22(日) 02:44:59.77 ID:Wrbbty2y
>119
了解。改めて組み直す。
自動の魅力に惹かれてMT4始めたけどスプ広過ぎ
手動は狭くても時間帯限られるし・・・難しいモンだねぇw
レスありがとう
121Trader@Live!:2013/12/22(日) 16:39:29.76 ID:gAa55MKz
気配値表示/注文画面に表示されるBid/Askと、チャートに表示される
Bid/Askラインはなんでいつもずれてるの?
例えばこれだとチャートだとBid/Ask=142.310/142.411でスプレッドは10.1だけど、
気配値だと142.315/142.406で9.1になってる。
http://www.dotup.org/uploda/www.dotup.org4753516.png
122Trader@Live!:2013/12/22(日) 17:05:39.70 ID:7agA1bQH
>>121
良いことを教えてやろう。

理想と現実は異なるってことだ。

この場合、気配値の方が正確なので、
Bid/Askを当てにしてはいけない。
業者によっては、この現象が全く起きないところもあるが、
国内の業者で特にクロス円で酷いことがよくある。
123Trader@Live!:2013/12/22(日) 17:17:20.24 ID:gAa55MKz
ん?どっちが理想でどっちが現実?
気配値の方がいいてことは現実のがいいってこと?
ヒストリーにはチャートのBidが記録されているみたいだけど、
何が原因でどうしてこういうことが起きているのかね。
124Trader@Live!:2013/12/23(月) 15:16:12.04 ID:qWOSVn9r
test
125Trader@Live!:2013/12/23(月) 17:48:22.66 ID:0ebvhi8O
英語でいう文法書のような、
分からない部分を調べる辞書的な使い方ができるMT4の書籍はないでしょうか?
126Trader@Live!:2013/12/23(月) 20:58:04.88 ID:fG9gukRG
mt4 リファレンス でググれ
127Trader@Live!:2013/12/23(月) 22:59:00.96 ID:Bu269/Xc
>>125
メタしすシーカーさんのサイトを全部読むほうがいいんじゃね
128Trader@Live!:2013/12/23(月) 23:06:17.58 ID:QfDF9ja1
国内のMT4採用業者一覧
http://www.comffered.com/mt4agent

どこかの企業のサイトだけどアフィなしだから載せとく
129Trader@Live!:2013/12/24(火) 07:52:40.25 ID:AogUhCSS
>>125
俺は、↓で充分間に合ってるよ。
mt4 (MetaTrader4)使い倒シストレ
http://googolyenfx.blog18.fc2.com/
130Trader@Live!:2013/12/24(火) 16:48:20.80 ID:mhMj5G1p
移動平均カラーインジで、上昇下降色変化する時にアラートを鳴らしたいのですが、
単純にアラート文いれるだけで改造できるでしょうか?

http://u3.getuploader.com/mt/result/52b93acf-5cc0-4e1d-907f-0eb4b63022d0
131Trader@Live!:2013/12/26(木) 15:42:48.09 ID:IAe9VS+g
>>127
うん、オイラもめちゃお世話になっているサイトだね
トップページのイラストが笑える
132Trader@Live!:2013/12/26(木) 21:14:55.46 ID:kpi1KPsk
すまんMT4でアルパリジャパンとFXDDってもう繋がらない?結構前からIP入力しても無理なんだが…
それぞれの業者のMT4じゃなきゃ無理なのかな?
133Trader@Live!:2013/12/26(木) 21:25:06.99 ID:K9mzPbKK
>>132
無理だね。
134Trader@Live!:2013/12/26(木) 21:54:36.72 ID:kpi1KPsk
>>133
おおそうなのか…すっきりしたわ。ありがとう 引き続きアルパリUKかサイバーで行くわ
135Trader@Live!:2013/12/26(木) 23:37:46.66 ID:ghJdFhtd
国内デモサーバーでどこがお進めですか?
出来れば無期限がいいのですがorz
136Trader@Live!:2013/12/27(金) 15:00:18.31 ID:Pg/3EzDS
>>135
口座開いてしまえば? 個人的にはサイバーかなぁ
137Trader@Live!:2013/12/27(金) 16:49:57.25 ID:e8Ur0sN5
サイバーのデモ口座の有効期間は60日間だよ
再開設出来るのかどうかまでは知らないけど
>>136さんのいうとおり口座開くのがいちばんいいかもね
フォレックスなんかと違って口座維持費は無料だし
138Trader@Live!:2013/12/27(金) 19:46:18.07 ID:XWcJpbmI
究極のEAスレのスレ主です。

こんなに他のスレにも少しでも波紋が広がっていたのは驚きです。

”アドバイスしたい欲”が抑えきれないのですが、
EAを作る上で何点か書き込みしてもよろしいですか?
139Trader@Live!:2013/12/27(金) 19:57:16.15 ID:6I9x8+6B
>>138
是非お願いします!
140Trader@Live!:2013/12/27(金) 20:04:40.27 ID:21Ze4cql
>>138
プログラミングに関わらない抽象的な話は究極のEAスレでやれよ。
こっちは折角コードで語る雰囲気ができてるんだから壊すな。
141Trader@Live!:2013/12/27(金) 20:16:24.13 ID:mpadcvrh
典型的な勘違いしてる人だね
142Trader@Live!:2013/12/27(金) 20:31:04.04 ID:iseMbQE+
>>138
何かアドバイスしてみて
いい内容だったら考える
143Trader@Live!:2013/12/27(金) 22:57:17.72 ID:lRnVQ9BV
人間とは、いともた易く有頂天になるものなのだな。
気を付けねばならんな。
144Trader@Live!:2013/12/28(土) 00:00:28.51 ID:wCExe9Zn
>>137
ttp://www.cyberagentfx.jp/mt4/faq/38/000443.html
>MT4デモ口座の有効期限は最終ログイン後、60日間となっております。

最終ログイン後60日だから使い続けるなら事実上無期限
145Trader@Live!:2013/12/28(土) 00:47:06.36 ID:9t20ieeB
>>144
確かに
こっちの早とちりだったわ
>>135さんすまん
146Trader@Live!:2013/12/28(土) 06:06:25.02 ID:m9hInlgU
WindowsXP SP3を使用しています。
MetaQuotes社のサイトから、現時点で最新のMetaTrader4 Build 509をダウンロードし、インストールしましたが、途中でエラーとなりインストールに失敗しました。

WindowsXPを使用している皆さんはインストールできていますでしょうか?
現在は最新のビルドでは、WindowsXPに対応していない?
147Trader@Live!:2013/12/28(土) 06:14:38.09 ID:U8fg4x5+
>>146
新規じゃないけど、XPで使えてる。

その途中のエラーとはなんぞや?
148Trader@Live!:2013/12/28(土) 14:57:33.98 ID:Ef6GAavF
>>146
同じく、エラーが気になるが、
相手のサーバがメンテだと、できないんじゃないかな。
149Trader@Live!:2013/12/28(土) 18:50:20.62 ID:m9hInlgU
>>147
>>148

レスありがとうございます。

エラーの画像をアップロードしました。
http://www.dotup.org/uploda/www.dotup.org4767473.png

実行したファイルは以下になります。
mt4setup.exe
ファイルバージョン:5.0.0.880

以前、古いバージョンのmt4setup.exeはインストールできましたが、上記バージョンのファイルではエラーとなってしまいました。

OSか何かの設定が必要でしょうか?
150Trader@Live!:2013/12/29(日) 00:26:59.02 ID:zq2eugDA
>>142
演算を高速化するための、
1、ローソク足が変わるごとに演算する関数のコード
2、一分ごとに演算するコード
3、指定したN分ごとに演算するコード

とかどうですか?
151Trader@Live!:2013/12/29(日) 00:46:47.64 ID:PFbEAaMD
お前、マジで言ってんの?
バカにするにもほどがある
ってレベルだと思うが。
152Trader@Live!:2013/12/29(日) 01:38:38.05 ID:iDVpeaTT
>>150
ぜひお願いします
感動されるような新しい切り口のコードを
153Trader@Live!:2013/12/29(日) 21:01:36.54 ID:B2QCnTt6
標準搭載のGigZagは、天底の判断が高値安値ですが、
高値安値じゃなくて、終値で天底判断するGigZagの改良インジはございませんか?。
154Trader@Live!:2013/12/30(月) 23:51:13.70 ID:0/eaD5dW
停滞してるっぽいので独り言カキコ。
年末の連休はずっとEA作り。
やっと自動でトレンドが引けるようになりました(*´ω`*)

「イケる!」と思ったEAもパラメータを少し変えただけで爆益・爆損。
どっかで読んだけどEAは大きく変動しない方が良いらしいね。
ドローダウンはロットや証拠金状況によって左右されるから意味ないとの事。
重要なのはプロフィットと取引回数なんだとさ。

最適化グラフと2Dサーフェス、使いこなせば何か見えてくるかな。
155Trader@Live!:2014/01/01(水) 04:49:14.36 ID:RirXnUmc
あれ、デモ口座のチャートが更新されなくなったんだけど俺だけですかね?
156Trader@Live!:2014/01/02(木) 00:16:51.76 ID:2CRIexlV
以前、MetaTrader4のインストール失敗について質問させていただいた者です。
まだ解決できなかったため、再度質問させていただきます。

新規にWindowsXP SP3を再セットアップし、MetaQuotes社のサイトから、現時点で最新のMetaTrader4 Build 509をダウンロードし、インストールしましたが、エラーとなりインストールに失敗しました。

以下がエラーとなってしまう画像です。
http://detailedstatement.web.fc2.com/mt4setup.png

環境は以下になります。
OS:WindowsXP SP3
IE:8
.NET Framework:3.5
MT4ファイルバージョン:5.0.0.880

ご教授のほど、よろしくお願いいたします。
157Trader@Live!:2014/01/02(木) 00:36:59.54 ID:67876vN6
>>156
そのエラー内容だけだと判断できないわ。

1.実行ファイルが壊れる。
2.実行時にネット未接続または、セキュリティソフト等により、
遮断されて接続ができず、インストールが正常に行えない。

「ここをクリックしてください。」を選択すると何が表示される?
158Trader@Live!:2014/01/02(木) 00:38:19.14 ID:67876vN6
>>157 脱字

>1.実行ファイルが壊れる。
1.実行ファイルが壊れてる。
159Trader@Live!:2014/01/02(木) 01:30:09.07 ID:1WxmUCKD
制作元からDLしないで使おうと思ってる業者のHPから落としてたら?
MT4対応した業者なら専用版のMT4置いてるでしょ。
事前に対応OSも確認できるし、エラーは電話サポも受けられる。
160Trader@Live!:2014/01/02(木) 06:25:02.71 ID:2CRIexlV
>>156

> 1.実行ファイルが壊れる。

→実行ファイルは壊れていませんでした。
 Win7では実行できたからです。


> 2.実行時にネット未接続または、セキュリティソフト等により、
> 遮断されて接続ができず、インストールが正常に行えない。

→ネットには接続できており、アンチウィルスソフトもインストールしていません。


> 「ここをクリックしてください。」を選択すると何が表示される?

→表示は以下の画像です。
 http://detailedstatement.web.fc2.com/error1.PNG
 http://detailedstatement.web.fc2.com/error2.PNG
161Trader@Live!:2014/01/02(木) 06:26:32.98 ID:2CRIexlV
>>159
> 制作元からDLしないで使おうと思ってる業者のHPから落としてたら?
> MT4対応した業者なら専用版のMT4置いてるでしょ。
> 事前に対応OSも確認できるし、エラーは電話サポも受けられる。

業者はMT4に対応しており、以下からダウンロードができますが、結果は同じです。
対応OSもXPに対応していました。
http://files.metaquotes.net/liquidity.connection/mt4/liqcon24setup.exe
http://www.fxuk.info/images/fx-uk.png

やはり、私のXP環境が悪い可能性が高いですね・・・
162Trader@Live!:2014/01/02(木) 06:52:27.37 ID:rPFtB5m2
おれ155だけど、>>156に嫉妬するわ
163Trader@Live!:2014/01/02(木) 07:36:40.51 ID:rPFtB5m2
もういいわ! おまいら宇宙人にやられて生きろ!

今年おまえら場苦役になれや

by総理より
164Trader@Live!:2014/01/02(木) 08:05:05.71 ID:xkrpYTEQ
韓国ストレステストのニュースは無しかあ
つまらんのお
165Trader@Live!:2014/01/02(木) 09:31:47.93 ID:u9KpQjs5
MT5またとまた
166Trader@Live!:2014/01/02(木) 10:27:54.81 ID:qXVgwUil
>>161
前に知人もXPにインストールできないとかいってたので
今、試しにXPの古いノートにインストールしてみたらインストールできなかった
以前の古いインストーラーではインストール出来ていたので
よくわかりませんが最近のインストーラーでは駄目ってことなのですかね

win7にインストールしたものをフォルダごとコピーしてXPに移したら
デモ申請もできて普通に使うことができました
ただコピー先のディレクトリ名が違ったからかアンインストーラーでは削除できませんでした(直接削除した)
167Trader@Live!:2014/01/02(木) 11:02:42.44 ID:67876vN6
>>161
実行ファイル及びネット環境には問題ないんだね。
エラーの詳細でも判断できないわ、ごめんね。

ちなみに9年前のXP(sp3)ではインストールできたよ。


>>162
正月休み、デモに限らずリアルも停止してる。(停止時間帯はブローカーによりけり
168Trader@Live!:2014/01/02(木) 11:05:47.25 ID:+VTzVVf8
>>161

XP SP3のパソコンに入れたけどインストールできたよ
デモも動いてる
169Trader@Live!:2014/01/02(木) 13:19:42.19 ID:JcMfXXCS
MT4動かないんだけどどういうことですか?
170Trader@Live!:2014/01/02(木) 13:48:33.18 ID:6HxB9HeG
そろそろ動き始めるよ
171Trader@Live!:2014/01/02(木) 15:08:41.48 ID:JcMfXXCS
>>170
全然動きません 僕だけでしょうかね・・・
172Trader@Live!:2014/01/02(木) 16:17:18.86 ID:goE4od0m
944 名前:Trader@Live![] 投稿日:2013/12/01(日) 15:31:17.66 ID:ZwDiWWMN [1/3]
RoboForexから件名「Monthly Statement」と言うメールが大量に送られてきます。
配信を停止するのには、どうすれば良いですか?

前スレの944です。

1日にメールが送られてきました。
RoboForexのサイトからお問い合わせのページに行き、
入力して送信ボタンを押したのですが、送信できません。

本当に困ってます。

どなたか配信停止について、詳しく教えて頂けないでしょうか?
173Trader@Live!:2014/01/02(木) 16:18:02.61 ID:goE4od0m
age
174Trader@Live!:2014/01/02(木) 16:32:28.36 ID:iZy+slHj
海外のMT5を扱う業者でトレードするには、
口座を開設するときの審査で、英会話が出来ないとダメなのでしょうか?
175Trader@Live!:2014/01/02(木) 17:16:15.73 ID:j/SYuv2U
>>174
ダメだね。
そもそも、システムにトラブルがあった時にどうやって連絡するんだ?
176Trader@Live!:2014/01/02(木) 18:06:09.36 ID:NoVrxPVB
チャートの今動いているロウソク足の時間が今日の午前9時とかに
なっていて現在時刻とずれているんですが、MT4っていつもそういうもの
なのですか?
177Trader@Live!:2014/01/02(木) 18:08:59.09 ID:cGkCuZ88
先輩方お願いします。

1時間足の単純移動平均を出して1つ前の終値がそれ以上ならL、位下ならSでOCO放置のEAを作りました。
バックテストで右側にある期間というので「1H」を選択してやるといい結果が出ますが、15分とか1分とかを選んでテストすると
途中で止まってしまう。2014.01.02 18:04:37 2013.12.16 19:43 逆張り004 EURJPY,M5: OrderSend error 4051
となってしまいます。途中で資金切れで注文できなくなっているようですが、それは問題でなく何故選ぶ時間枠を変えると
このようになってしまうのでしょうか?1分足でもんだなくテスト終了しないと信ぴょう性はないですか?
178Trader@Live!:2014/01/02(木) 18:21:32.35 ID:cGkCuZ88
それと1時間足5本分の高安を算出している箇所があるのですが、EAを動かすチャートの時間枠も
1時間を使わないとダメなのでしょうか?細かく動きを見たいので5分足を表示させたいのですが。。。
EAの中には
HIGHHIGH=High[iHighest(NULL,PERIOD_H1,MODE_HIGH,5,1)];
LOWLOW=Low[iLowest(NULL,PERIOD_H1,MODE_LOW,5,1)];

のように1時間を指定しています。
179Trader@Live!:2014/01/02(木) 18:33:08.79 ID:PooQFfkf
それだとiHigh()/iLow()使わないといかん。
High[]/Low[]で参照されるのは現在の時間足になる。
180Trader@Live!:2014/01/02(木) 18:33:50.52 ID:j/SYuv2U
>>176
正月明けはいつものことだよ。
181Trader@Live!:2014/01/02(木) 18:34:16.51 ID:+dKAOTkt
error4051は「関数への引数値が無効」
注文がうまくできてない。

iHighest()の中身の (NULL,PERIOD_H1,MODE_HIGH,5,1)の部分で
「PERIOD_H1」と指定しているので1時間足以外ではテストできないよ。
ここを「0」に変更すればおk。※「0」はその時表示してる足で計算

余談だけど、>>177焦りすぎ、登校前に読み返すくらいしろよw
182Trader@Live!:2014/01/02(木) 18:34:46.72 ID:PooQFfkf
お前がな。
183Trader@Live!:2014/01/02(木) 18:35:09.20 ID:+dKAOTkt
だな
184Trader@Live!:2014/01/02(木) 18:41:14.22 ID:cGkCuZ88
>>181
本当にすみません。どうしても1時間足の移動平均線が必要なので
1時間足でテストします。これでテスト通ればその通りに動くと考えていいでしょうか?

>179
うーん
MODE_HIGH,5 と(5)を指定しているので1つ前の足を含めて5本分の最高値が出ると思うのですが。
printで出してもちゃんと出てるようです。
185Trader@Live!:2014/01/02(木) 18:46:44.98 ID:PooQFfkf
ちゃんと読め。
186Trader@Live!:2014/01/02(木) 18:48:25.19 ID:cGkCuZ88
テスト通るけど新規、決済ともに
5分で区切れるピッタリのところでしか売買してないみたいです。
単純に移動平均を見て一定pips下げたらL、上げたらSというものなので
5分きっかりはおかしいですね。
正月からすみませんでした。
187Trader@Live!:2014/01/02(木) 18:49:25.09 ID:PooQFfkf
こうして、ゆとりはゆとりのままなのであった。
188Trader@Live!:2014/01/02(木) 18:55:10.56 ID:cGkCuZ88
>>185
http://www.autofx-lab.com/ja/metatrader-4-%E5%85%A5%E9%96%80/3-%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AB%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E4%BD%9C%E6%88%90%EF%BC%881%EF%BC%89

MetaTraderのExpert Advisorは標準でHigh[]という配列を用意し、この中にはそれぞれの足の最高値が入っているので、High[iHighest()]と記述することで結果として「ある期間の最高値」が求められるわけです。
やや複雑な説明になってしまいましたが、「High[iHighest()]とすることで、一定期間の最高値がdouble型で求められる。」ということを知っているだけで実用上は十分でしょう。
189Trader@Live!:2014/01/02(木) 18:56:28.34 ID:PooQFfkf
おいおい、まじか。
これはタイプBのゆとりですね。
190Trader@Live!:2014/01/02(木) 18:57:40.26 ID:cGkCuZ88
>>189
ゆとりですみません、、
5分おきにしか売買してない問題が出て苦しいです。
191Trader@Live!:2014/01/02(木) 18:59:54.48 ID:PooQFfkf
そうですか、それは大変ですね。
192Trader@Live!:2014/01/02(木) 19:28:52.61 ID:j/SYuv2U
こころのゆとり 大事。

High[] の代わりに、iHigh() を使え とアドバイスされたら、

たとえ無駄だと思っていても、一度は試してみるこころ大事。
193Trader@Live!:2014/01/02(木) 19:41:26.26 ID:0ferhQY+
(NULL,PERIOD_H1,MODE_HIGH,5,1)の最後が 1 になっているから足の始値で売買するのだよ 君。
194Trader@Live!:2014/01/02(木) 19:59:18.60 ID:cAYwGE2N
>>180
そうだったのですか。安心しました。
195Trader@Live!:2014/01/02(木) 20:01:29.20 ID:cGkCuZ88
>>193
おっしゃる意味が分かりません。
今「1時間」でなく「4時間」おきの高安取得と移動平均25本を取得するよう変更しPERIOD_H1をPERIOD_H4に
変更し、バックテストの時間枠を4時間で行った所相変わらず5分おきにしか売買していません。

確定した1つ前の4時間足からそれも含め5本分の高安を算出し、さらに確定した移動平均25本を参照して
リアルタイムで売買するだけの単純なものです。

>(NULL,PERIOD_H1,MODE_HIGH,5,1)の最後が 1 になっているから

とありますがそれは4時間足のばーの確定を現在のも含める(0を指定)か含めないで1つ前の確定(1を指定)
だけの問題なので5分おきになるかどうかは全く関係ないと思います。


75 2013.11.05 15:40 buy 38 1.00 132.838 0.000 0.000 0.00 64130.00
76 2013.11.05 15:55 close 38 1.00 132.892 0.000 0.000 540.00 64670.00
77 2013.11.05 16:20 buy 39 1.00 132.798 0.000 0.000 0.00 64670.00
78 2013.11.05 16:25 close 39 1.00 132.823 0.000 0.000 250.00 64920.00
79 2013.11.05 16:40 buy 40 1.00 132.518 0.000 0.000 0.00 64920.00
80 2013.11.05 16:45 close 40 1.00 132.583 0.000 0.000 650.00 65570.00
81 2013.11.05 16:55 buy 41 1.00 132.534 0.000 0.000 0.00 65570.00
82 2013.11.05 17:40 close 41 1.00 132.386 0.000 0.000 -1480.00 64090.00
83 2013.11.05 17:50 buy 42 3.00 132.416 0.000 0.000 0.00 64090.00
84 2013.11.05 17:55 close 42 3.00 132.483 0.000 0.000 2010.00 66100.00
196Trader@Live!:2014/01/02(木) 20:20:02.95 ID:cGkCuZ88
>>193
1->0にしても何も変わりませんでした。
残念です。
197Trader@Live!:2014/01/02(木) 20:27:58.40 ID:0ferhQY+
Every tick ではなく Control points で行っているとか?
198Trader@Live!:2014/01/02(木) 20:28:00.20 ID:+VTzVVf8
iHighとhighの違いがわかってない
ここからやりなおし。

あとよくわからないならテストはeverytickでしたらいいよ
199Trader@Live!:2014/01/02(木) 20:35:58.11 ID:cGkCuZ88
>>197
はい 本でものすごく時間がかかると読んだのでコントロールポイントに設定しました。

>198
>188でも書きました。
iHighestで一定期間の高値があるバーの場所(何本目か)を出してその数を
highに渡してそのバーの高値を出しているだけです。わざわざ2行に分けて書く必要もないですよね?
200Trader@Live!:2014/01/02(木) 20:50:35.06 ID:0ferhQY+
HIGHHIGH = iHigh(NULL, PERIOD_H1, iHighest(NULL, PERIOD_H1, MODE_HIGH, 5, 1));
こういう風に書き直す。
201Trader@Live!:2014/01/02(木) 21:04:48.51 ID:cGkCuZ88
HIGHHIGH = iHigh(NULL, PERIOD_H1, iHighest(NULL, PERIOD_H1, MODE_HIGH, 5, 1));
HIGHHIGH=High[iHighest(NULL,PERIOD_H1,MODE_HIGH,5,1)];


自分のと教えていただいた分を書き比べました。、ユトリなので違いが今ひとつ分からないです。
ない頭絞って明日考え抜いて書き込みさせて頂きます。
202Trader@Live!:2014/01/02(木) 21:14:33.66 ID:cGkCuZ88
>>200
よく見て気づいたのですが、教えてもらった方は私のと比べて
iHigh(NULL, PERIOD_H1,の部分が違うでだけです。そこは省略できるのではにですか?
iHighとHighの部分は違いますが。。
203Trader@Live!:2014/01/02(木) 21:22:24.12 ID:0ferhQY+
High[ ] だとそのチャートの足でになる。
4時間足で行うと High[ 1時間足での一番高い価格の位置] になるから
1時間足ではiHighestが3だったら4時間足で3本前の高値になる。
全然違う価格になる。
もしHigh[ ]を使いたいのであれば iHighestの時間は 0 にするべき。
204Trader@Live!:2014/01/02(木) 21:26:34.96 ID:cGkCuZ88
>>203
有難うございました。使う足まで考慮したら0にしてくおくと
ぜんぜん違う値になるのを防げるという事ですね。

MT4も煩わしい設定値持たずに全部0にすればいいのにバカですね。
205Trader@Live!:2014/01/02(木) 21:31:23.09 ID:cGkCuZ88
テストバー数 1816
モデルティック数 39264
モデリング品質 n/a
不整合チャートエラー 47
初期証拠金 60000.00
総損益 23224985.83
総利益 107139108.95
総損失 -83914123.12
プロフィットファクター 1.28
期待利得 9561.54
絶対ドローダウン 9180.00
最大ドローダウン 1827205.83 (12.51%)
相対ドローダウン 30.45% (39080.00)
総取引数 2429
ショートポジション(勝率%) 1368 (66.08%)
ロングポジション(勝率%) 1061 (68.99%)
勝率(%) 1636 (67.35%)
負率 (%) 793 (32.65%)
最大
勝トレード 497000.00
負トレード -512000.00
平均
勝トレード 65488.45
負トレード -105818.57
最大
連勝(金額) 19 (1084000.00)
連敗(金額) 7 (-439000.00)
最大化
連勝(トレード数) 1499297.55 (13)
連敗(トレード数) -1303000.00 (4)
平均
連勝 2
連敗 1

6ヶ月でだいぶ増えます。初期資金6まんでいいのは法人口座だからです。
途中まで複利ですが最大一回BET数100枚なんでそれの対処はしていません。
BET数500枚なら100枚づつやって全部保有すrようにすればいいのですが、面倒なんで放置してます。
206Trader@Live!:2014/01/02(木) 21:36:01.20 ID:PooQFfkf
ほんと、ゆとりに限らず>>204みたいなやつ多いね。
何様のつもりなんだろ。
207Trader@Live!:2014/01/02(木) 23:23:12.58 ID:Gu08kBuh
まあ、一言でいうとお客さまだなw
208Trader@Live!:2014/01/03(金) 00:05:27.01 ID:j/SYuv2U
大事なお客様だから、大切にしてあげましょうね
209Trader@Live!:2014/01/03(金) 00:33:47.38 ID:OwOabU7t
最近、起動に失敗するのは何でだろう?
タスクマネージャーを見ると、terminal.exeは有るんだけど
ウィンドウが表示されずに、CPU負荷が高いまま…

historyフォルダを、上書きすると立ち上がるんだけど…
210Trader@Live!:2014/01/03(金) 00:38:19.92 ID:O/g6ITkp
>>209
オプションで表示するチャートバー減らすといいよ
211Trader@Live!:2014/01/03(金) 00:38:26.49 ID:E3ee/Z+K
>>209
ヒストリカルデータが多すぎで、
起動時の処理に耐え切れないんじゃないかな。
ヒストリカルデータが少なくても、
使ってるインジやEAで悪さしてるのがいるとか。
212Trader@Live!:2014/01/03(金) 00:40:44.58 ID:SpGCQUIL
>>209
それは失敗してるんじゃなく、時間がかかってるだけでは。
原因はインジケーターのどれかが足が増えて時間食ってるか
無限ループしてるか。
213Trader@Live!:2014/01/03(金) 00:41:36.62 ID:OwOabU7t
ありがと
いろいろやってみる。
214Trader@Live!:2014/01/03(金) 12:16:51.17 ID:89Tmy5pt
>>205
半年で+2000万? しかも6万から???
215Trader@Live!:2014/01/03(金) 12:45:27.65 ID:WR2j4wYt
たかがバックテストの結果じゃないか。
絵に描いた餅というか狸の皮算用というかメルヘンだよね。
バックテスト限定&複利という条件なら、
小さな国だと丸ごと買えるほど儲かることもあるでしょう。
216Trader@Live!:2014/01/03(金) 13:45:54.97 ID:89Tmy5pt
>>215
そうかな?この半年の円安でロングのみでもなさそうだし、損切りも入れてるようだし。
自分ではバックテストでもこの結果は出ませんわ。
217Trader@Live!:2014/01/03(金) 14:14:46.23 ID:WR2j4wYt
>>216
過去の値動きがそのまま再現されることは絶対にない。
バックテストの結果に感心しているようじゃいいカモとなってしまいそう。
詐欺的な商材とかEAとか歴史家の罠とかの。

そんなことはどうでもいいんだけどさ。
自分の事を棚に上げて言語をバカ呼ばわりする人について蒸し返すのは止めて欲しい。
…という空気は読んで欲しかった。
218Trader@Live!:2014/01/03(金) 14:28:07.62 ID:89Tmy5pt
>>217
半年で2400もトレードしてるんだからスキャとは言わないけど
短い時間でOCOしてるんだろ?それなら大きな動き関係ないし
適等に↑↓動く相場であればいいのでは?

それと蒸し返すって何のこと?空気読めずごめん。意味フ。
219Trader@Live!:2014/01/03(金) 14:57:35.98 ID:kJkbIYMt
正しい値は出てないから
考えるだけ無駄だぞw
220Trader@Live!:2014/01/03(金) 18:09:37.13 ID:89Tmy5pt
>>205の人

エブリティックでやってないようなので危険だよ。
1時間を選んでテストするとその一つ下の時間枠(30分足)の4本値しか参照されない。

つまり具体的には
ある時間15:10にロング 138.400とか結果に出ていてもその時間にはそんな値をつけていないのに
その30分足で安値が138.390とかだとその時間に買えた事になり、決済も30分足の高値を参照してるだけだから
自分がポジる前に付けた高値で売れましたぁ とかなってしまうよ。

時間かかるけどどの時間枠選択してテストしてもエブリティックしか意味ないよ。

多分半年で6万->2000万行ってうはぁとかなってるのはそれが原因だと思う。

エヴリティックで検証してみな?途中で資金切れで止まるかスプにやられて一気に右肩下がりで終わる結果出るから。。。
221Trader@Live!:2014/01/03(金) 22:25:00.95 ID:vPiOmAKg
6万からなんだし、失っても数万で終わるのならリアルやってもいいんじゃない?
222Trader@Live!:2014/01/04(土) 17:12:03.34 ID:Cx6293o/
MT5のチャートデータってどこに保存されてるのですか?
MT4だとhistoryフォルダの中でしたけど
223Trader@Live!:2014/01/04(土) 17:14:33.48 ID:5N+cz2JR
>>222
暗号化されとる
224Trader@Live!:2014/01/04(土) 17:53:31.77 ID:Cx6293o/
>>223
ありがとうございます
暗号化ですか。ということは自分で消したりとかできないってことか。。
225Trader@Live!:2014/01/04(土) 22:51:34.46 ID:eVmaFUgL
デモ口座の申請が通らねぇ 何でだぁ
226Trader@Live!:2014/01/04(土) 23:50:05.25 ID:UIwCzgrV
>>225
どこの会社のデモか知らんけど
会社によっては公式からアカウント作って口座作らないといけないとかある
227Trader@Live!:2014/01/05(日) 01:22:22.39 ID:M86o4aDk
レスありがと。
FXCM、6時間くらい前までログイン出来てたのに今は出来ない。
「期限1ヶ月だから切れたかなぁ〜」と再申請してもIDとPWが出ず完了が押せない状態。
ちなみにアカウント持ってるけどデモで練習したいんだ。
単に年始のメンテなのかな。
228225:2014/01/05(日) 01:31:27.81 ID:M86o4aDk
すまん、今試したら入れた。
処理待ちだったのかな。お騒がせしました。
229Trader@Live!:2014/01/05(日) 21:30:45.38 ID:5/rPFF/2
>>227
稀に見る糞詐欺会社に期待してもムダ
230Trader@Live!:2014/01/06(月) 17:09:42.79 ID:cdnbWN7G
漠然とした質問ですみませんが
グローバル変数をstaticにする必要てあるのでしょうか?

今までstaticとして扱いたい変数があったら
ローカルだけでなくグローバルな変数にもstatic付けてましたが
ふと、意味無いのかなと気付きました・・・
231Trader@Live!:2014/01/06(月) 17:12:33.70 ID:OD+ZL0A9
static にすると、他のEAと共有できる仕様だったら面白かったのにな。
232Trader@Live!:2014/01/06(月) 18:24:58.76 ID:cdnbWN7G
ということはやはりグローバル変数をstaticにする意味はないという理解でいいんでしょうか?
mqlが初言語なのでなかなか自信が持てなくて
233Trader@Live!:2014/01/06(月) 18:34:02.68 ID:zcUz1aEa
グローバル変数による。
234Trader@Live!:2014/01/06(月) 18:50:39.12 ID:Ytsh4DH9
>>230
C/C++の特徴を受け継いでいるからなのか、プログラム言語一般に言えることなのかわかりませんが
変数のスコープが広いほど寿命が長いように設計されてんじゃないですかね?
235Trader@Live!:2014/01/06(月) 21:51:24.08 ID:cdnbWN7G
ムズかしいです(><)
static付けるとよりスコープが広くなるという事でしょうか
236Trader@Live!:2014/01/06(月) 22:15:15.62 ID:vc7BZmyl
>>235
mql4に限ればグローバル変数のstaticは付けても付けなくても一緒、何も変わらない。
C/C++だとstaticなグローバル変数はファイルスコープになるんだけど、mql4にはそもそも
ファイルスコープしかない。
237Trader@Live!:2014/01/06(月) 23:18:52.29 ID:zcUz1aEa
ライブラリがあるからそれは嘘。
238Trader@Live!:2014/01/06(月) 23:59:21.03 ID:cdnbWN7G
>>236
ありがとうございます
mqlには関係ないけどグローバル変数を静的にすると逆にスコープが狭くなるんですね
239Trader@Live!:2014/01/07(火) 18:42:42.36 ID:kB1FZCaD
質問です。
直前の取引結果が、勝ちトレードだったか負けトレードだったのかを知るには、どのようにすればよいのでしょうか?
例えば、
注文を出すときに、利確値と損切り値を設定しておいて、
どちらかの値段で決済されます。
次の注文を入れるときに、前回の結果が勝ちトレードだったら●●●をする。
前回の結果が負けトレードだったら▲▲▲をする。
のようにしたいと思ってます。

どなたか、アドバイスお願いします。
240Trader@Live!:2014/01/07(火) 18:55:03.27 ID:iMEAZzjx
>>239
注文履歴を読み取ることができるから、
いろいろ調べてみて。
241Trader@Live!:2014/01/07(火) 18:58:05.25 ID:iMEAZzjx
OrderSelect の MODE_HISTORY とか、?OrdersHistoryTotal とか。
242Trader@Live!:2014/01/07(火) 19:14:17.46 ID:kB1FZCaD
>>240
ググって調べてるんですが、イマイチわかりません。
OrderHistory と OrderProfit を使うんですかね?
ってゆうか、使い方もよくわかんないけど。

アドバイスお願いします。
243Trader@Live!:2014/01/07(火) 19:35:52.20 ID:kB1FZCaD
>>241
決済したポジションの最新のものを取得するには、
OrderSelect(0, SELECT_BY_POS, MODE_HISTORY);
でいいですかね?
第1引数のところは、0でいいのでしょうか?
244Trader@Live!:2014/01/07(火) 23:10:49.93 ID:CH5mQTsg
そもそも、OrderSelect()のインデックスの順番は信用できない気がする。
245Trader@Live!:2014/01/07(火) 23:16:21.87 ID:iMEAZzjx
>>242
MODE_HISTORY とか、OrdersHistoryTotal を使ってるEAを探すんや。
そうすれば使い方が分かる
246Trader@Live!:2014/01/07(火) 23:56:50.11 ID:CH5mQTsg
OrdersHistoryTotalはわかんないけど。
OrderSelect()はお勧めしない。

僕はこういう関数を作った。
ポジションを持ったときに、価格と時間を記録する。
ポジションが無くなったか、変わったとき、そのときの時間から先の時間を引く。
引いた時間がプラスであれば、ポジションは決済されたと確定できる。
このとき決済の価格と、先の価格を比べる。
247Trader@Live!:2014/01/08(水) 06:12:24.56 ID:sGcYYfDS
それって複数ポジション持ったときはどうやって管理してるの?
248Trader@Live!:2014/01/08(水) 11:35:36.75 ID:dGfAUrds
ああ、ピラミッディング とか ナンピンとかの管理はもちっと複雑になるな。
僕は1オーダー、定数ポジションで作ってるから、うまく機能してるが。
先の考えを延長すればできるとは思うが興味ない。役立たずすまん。
249Trader@Live!:2014/01/08(水) 11:52:43.39 ID:c6OxcIS7
FXCMとFOREXのMT4ではピボットラインの位置が全然違います。
どちらの方が信頼できますか?
250Trader@Live!:2014/01/08(水) 12:34:50.76 ID:aoLCaN53
>>249
トレードしてみれば分かるだろ。
251Trader@Live!:2014/01/08(水) 12:36:32.83 ID:xGFA/b/3
ピボットてのは計算方法が4種類くらいあるし
業者の開業終業時間が1時間遅ければ初値終値も変わってくるし
キッチリハネ返る時もあればヒゲ出す事もある
だいたいのあやふやな目安程度に考えれば良いのでは
252Trader@Live!:2014/01/08(水) 15:07:20.15 ID:P7PrVB7V
>>249
日足の区切り時刻が違うんじゃない?
片方が日本時間7時で、もう片方は8時とか
253Trader@Live!:2014/01/08(水) 17:07:09.97 ID:lCLD3Ocy
>>243
//オーダーがなかったらマイナス1
int newestHistory(){
int n,ticket;
ticket = -1;
datetime last=0;
for(n=0;n<OrdersHistoryTotal();n++){
OrderSelect(n,SELECT_BY_POS,MODE_HISTORY);
if(OrderCloseTime()>last){
ticket = OrderTicket();
last = OrderCloseTime();
}
}
return(ticket);
}
ほい
254Trader@Live!:2014/01/08(水) 17:20:42.79 ID:lCLD3Ocy
利用
OrderSelect(newestHistory(),SELECT_BY_TICKET,MODE_HISTORY);
255Trader@Live!:2014/01/08(水) 18:59:07.59 ID:L3nKPxDT
>>254
OrderSelect(newestHistory(),SELECT_BY_TICKET,MODE_HISTORY);
この後に、
if(OrderProfit() > 0){
勝ち
}
else
負け

ってな具合でいいんでしょうか?
256Trader@Live!:2014/01/08(水) 19:15:39.60 ID:aoLCaN53
せめて、マジックナンバーぐらい見ようぜ。

他のEA動かしてたら、他のEAの閉じたポジ見ちゃうぜ。
257Trader@Live!:2014/01/08(水) 19:35:08.17 ID:lCLD3Ocy
追加したきゃご自由に わざとやってるのわかんないのかなぁw
258Trader@Live!:2014/01/08(水) 20:12:08.79 ID:aoLCaN53
俺は親切だからな。
259Trader@Live!:2014/01/08(水) 20:12:57.06 ID:lCLD3Ocy
//オーダーがなかったらマイナス1
int newestHistory(int magic=0,string pear="nulltext"){
if(StringFind(pear,"nulltext")==0){
pear = Symbol();
}
int n,ticket;
ticket = -1;
datetime last=0;
for(n=0;n<OrdersHistoryTotal();n++){
OrderSelect(n,SELECT_BY_POS,MODE_HISTORY);
if(OrderCloseTime()>last && OrderMagicNumber()==magic && StringFind(pear,OrderSymbol())==0){
ticket = OrderTicket();
last = OrderCloseTime();
}
}
return(ticket);
}
260Trader@Live!:2014/01/08(水) 20:57:04.49 ID:cQhlEwq6
pear=梨
261Trader@Live!:2014/01/08(水) 23:53:51.47 ID:J3Fwy5ip
DLLを使うと、マルチコアの複数のプロセスを同時に実行(計算)させることができますか?
できるとして、その難易度は高いですか?
262Trader@Live!:2014/01/09(木) 00:18:04.99 ID:xXKrEM7R
できるけど、そういう質問してるレベルだとほぼ不可能かな。
263Trader@Live!:2014/01/09(木) 00:20:19.49 ID:eYb0BBfZ
移動平均の for ループを DLLで並列処理させるくらいなら簡単だけど。
264Trader@Live!:2014/01/09(木) 01:00:49.58 ID:7EhK758Z
初心者です。
MT4ってどこから入会しても同じなんですか?
聞くところによると、海外より国内業者がいいのですか。
ロシアの本物のところからがいいのですか。
何か差があるのですか?
有料とかあるのですか?
どうかよろしくお願いします。
265Trader@Live!:2014/01/09(木) 01:04:25.09 ID:xXKrEM7R
>>263
それは複数プロセスって話じゃないし。まぁわかってない
だけなんだろうけど。
それにそういうのをパラでやっても起動が最大コアの数ぶんだけ
速くなるだけで定常状態では意味ないでしょ。
266Trader@Live!:2014/01/09(木) 11:30:14.46 ID:31sAAEsa
> ID:xXKrEM7R
初心者を罵倒するくらいなら お前はこのスレに来なければいいんじゃね?
267Trader@Live!:2014/01/09(木) 11:41:54.49 ID:xXKrEM7R
お前、言葉の意味わかってる?
ならお前教えてやれよ。
268Trader@Live!:2014/01/09(木) 11:45:25.83 ID:31sAAEsa
>>261
俺は並列処理につぃて何も分からないが、ひょっとしたらここらへんが参考になるかもしれません。
http://jp.xlsoft.com/documents/intel/compiler/525J-001.pdf
http://www.cc.u-tokyo.ac.jp/support/kosyu/03/kosyu-openmp_c.pdf
ほかにも 『OpenMP』 でググれば、使える情報があると思いますよ。
269Trader@Live!:2014/01/09(木) 12:07:29.45 ID:xXKrEM7R
何もわからないやつが無責任なこったな。
270Trader@Live!:2014/01/09(木) 16:42:17.99 ID:2wHvFoT5
>>268みたいに前向きなレスをしろよ
271Trader@Live!:2014/01/09(木) 19:42:03.33 ID:vLJTEU64
配列の結果として
0でなくて
2147493647
と返ってくることがあるのですが理由がわかりません。

配列の中身が空だったり、配列の要素定義以上の数を添字に与えたりしたら、
通常0が返ってくるのでは?と思うのですが。
272Trader@Live!:2014/01/09(木) 20:00:22.24 ID:xXKrEM7R
>>271
普通の配列ならそうだが、SetIndexBuffer()した配列ならデ
フォルトでEMPTY_VALUEが返る。
ちなみに、EMPTY_VALUEは2147483647=0x7fffffffな。
273Trader@Live!:2014/01/09(木) 20:10:52.58 ID:vLJTEU64
ありがとう。理解しました。
SetIndexBuffer 怖いな。便利だけど。
274Trader@Live!:2014/01/09(木) 20:15:25.30 ID:xXKrEM7R
0にしたければSetIndexEmptyValue()すればいい。
275Trader@Live!:2014/01/09(木) 22:52:16.40 ID:vLJTEU64
おありがとうございます。
ふと思ったのですが、もしやSetIndexBufferで定義した、配列はいきなり2147493647もの配列数を確保している。
とかじゃないですよね。
276Trader@Live!:2014/01/09(木) 23:11:18.41 ID:xXKrEM7R
MT4は32bitアプリなのでとりあえずそれはない。
0からBars-1が保証されている。
277Trader@Live!:2014/01/09(木) 23:19:29.02 ID:vLJTEU64
なるほど、逆にいえば配列数を最初には定義できない。
配列数をユーザー側で動的に変更できない。ということかな。
普通の配列を使えよ、と言われるかもしれないけどw
278Trader@Live!:2014/01/09(木) 23:22:02.40 ID:xXKrEM7R
用途次第。
単に可変長配列を使いたいならArrayResize()すればいい。
index bufferのメリットは足に関係した処理をしたい時に簡単に使えること。
279Trader@Live!:2014/01/09(木) 23:23:58.72 ID:vLJTEU64
そうだね。理解した。ありがとう。
280Trader@Live!:2014/01/10(金) 02:13:46.83 ID:2UyCVEh8
サイバーのデモMT4を、アンインストールして入れなおしても、前回のものが表示されます。
どうやったら完全に削除されて、新しく始めれるのでしょうか?
ウィンドウズビスタです。
アンインストールした後、C:\Program Filesもちゃんと削除しました。
よろしくお願いします。
281Trader@Live!:2014/01/10(金) 06:47:19.29 ID:C7oaVTHD
>>280
互換性ファイル をぐぐってみるとか、
インストール先を変えてみるとか。
282Trader@Live!:2014/01/10(金) 06:50:45.01 ID:jQyqcbhm
283Trader@Live!:2014/01/10(金) 07:55:44.84 ID:KwFgEUtC
>>280
スタートメニューのコンピュータ
「整理 - フォルダと検索のオプション - 表示 - すべてのファイルとフォルダを表示する」
を設定する

スタートメニューのコンピュータ
[ ユーザー - ユーザー名 - AppData - Local - VirtualStore - Program Files]
に保存されているMT4フォルダを削除

これでいける
284Trader@Live!:2014/01/10(金) 08:49:12.31 ID:Htj3Bf7O
デモ講座真正で入れたデータはレジストリのどっかだろ。
変わったのか?
285Trader@Live!:2014/01/10(金) 11:23:40.98 ID:dXqos5cm
>>282
時系列配列をさらに逆順にするなら、普通に配列を…
286Trader@Live!:2014/01/11(土) 01:48:05.52 ID:QKdqY070
すいません、超初心者です。
テスターでスプを0にすると成績がもっと悪くなるんですが何でですか?
287Trader@Live!:2014/01/11(土) 04:37:32.47 ID:+mBMezMW
てす
288Trader@Live!:2014/01/11(土) 04:39:53.66 ID:+mBMezMW
>>132
遅レスだけどFXDDのデモサーバーは結構前に変わってて今は
mt4d3dc3.fxdd.com
って入れれば行けるよ
久しぶりに来たけどテンプレから消えたんだね
デモサーバー探しに来たのになかったから自分で探した
289Trader@Live!:2014/01/11(土) 15:47:55.23 ID:yP+262W9
アラーム設定で.mp3をアラーム音にしたらプレイヤーが立ち上がるんですか
どうすればプレイヤーが立ち上がらず音が鳴らせますか?
290Trader@Live!:2014/01/11(土) 16:13:20.56 ID:yP+262W9
>>289
解決、mp3をwavに変換したら大丈夫だった
291Trader@Live!:2014/01/11(土) 22:38:34.41 ID:oXNvk4/+
MQLのプログラムを書いて、MT4で実行すると。
MT4自体が落ちてしまったんだが。

たいがい、プログラムのミス(意図しない結果)は、
@コンパイル中にコンパイラが注意する。
A実行中にエラーコードを出力する。
でだいたい分かるものだけど。

Bアプリ自体が落ちる
というのは、僕にとってはめづらしい。

コンピュータに詳しい方に聞きたい。
アプリ自体が落ちるというのは、もちろん上の@Aとは系統の違う問題だと
考えていいのかな?
@やAは、MT4開発者が想定していたプログラムミスで、
Bにいたっては、MT4開発者も想定していなかったミスとか。
そういうことですかね。
292Trader@Live!:2014/01/11(土) 22:46:32.84 ID:FqDaElep
只のループだろ
293Trader@Live!:2014/01/11(土) 22:50:44.33 ID:ojTu8HXu
一度だけ落ちたのか毎回必ず落ちるのか?
1行2行の簡単なコードで試しても落ちるのか?
そのへん試さないと問題の切り分けができない。
既に問題を切り分けてるなら、その情報を書かないと分からない。

>>291見ただけだと、単にループ処理の記述ミスなんじゃねーの?としか言えないかな
294Trader@Live!:2014/01/11(土) 23:04:08.99 ID:oXNvk4/+
ありがとう。ループの可能性をみてコードを調べて見ます。
295Trader@Live!:2014/01/12(日) 00:49:45.03 ID:nkl28SX8
ピラミッディングした建玉を全決済しようとすると、バックテストで一部残ってしまうことがあります
何が原因なのでしょうか?
全決済の時は以下のルーチンに飛びます

void ClosePositions()
{
  for(int i=0; i<OrdersTotal(); i++)
  {
   if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) == false) break;
   if(OrderMagicNumber() != MAGIC || OrderSymbol() != Symbol()) continue;
 
   if(OrderType()==OP_BUY)
   {
   OrderClose(OrderTicket(),OrderLots(),Bid,Slippage,Yellow);
   }

   if(OrderType()==OP_SELL)
   {
   OrderClose(OrderTicket(),OrderLots(),Ask,Slippage,Yellow);
   }
  }
}
296Trader@Live!:2014/01/12(日) 05:13:36.63 ID:OGYSlxZg
>>295
SELECT_BY_POSで手繰る時は尻から辿れ。
そうすべき理由はあるけど気にすんな。とにかく黙って言うとおりにしろw
297Trader@Live!:2014/01/12(日) 07:42:22.77 ID:QMe0wf7d
オーダーが無くなると
OrdersTotal()=5
0 1 2 3 4 (OrderSelect(SELECT_BY_POS,0);OrderClose(OrderTicket());
0 1 2 3 (OrderSelect(SELECT_BY_POS,1);OrderClose(OrderTicket());
0 1 2 (OrderSelect(SELECT_BY_POS,2);OrderClose(OrderTicket());
0 1 (OrderSelect(SELECT_BY_POS,3);OrderClose(OrderTicket());
↑0のデータが消えると1のデータが0に移動し後ろも詰めてくるので
以上のようになります。順番に実行すると、残りのデータが2個のときに
OrderSelectに失敗します。
298Trader@Live!:2014/01/12(日) 09:23:54.01 ID:HmSh0E9V
最近EAを使い始めたんだが、ふと全般タグチェック欄で気になる事が。

「DLLの使用を許可する」「外部エキスパートの使用を許可する」というのが
あるんだが、これにチェック入れるとEA開発元に情報が行くと言う事なんだろうか?
何かいい気がしないんだが・・・。
これ監視されてるんかな?
299Trader@Live!:2014/01/12(日) 11:09:06.51 ID:22Pu7Izx
全然違う
300Trader@Live!:2014/01/12(日) 11:16:22.78 ID:QMe0wf7d
>>298
DLL使用 Win32APIの利用ができる。MQL言語以外で作られたプログラムも実行可能。なんでもあり
外部エキスパートの使用を許可 EX4形式での利用の許可

両者に共通する点は、#importブロックにより宣言され、プログラム実行時にまで読み込まれない点である。
もし、ライブラリが存在しない場合やターミナルの設定により外部エキスパート、DLLの呼び出しが制限されている
場合、実行時エラーが発生する。

余談だが、#includeはファイルコンパイル時に結合されるので上記の設定で実行時エラーが起きることはありませんがコンパイルエラーは発生します。
301Trader@Live!:2014/01/12(日) 11:39:48.64 ID:BAVd6w3w
>>295
ポジション情報は内部的にこのように保存されている
1行目 : ポジ情報AAA
2行目 : ポジ情報BBB
3行目 : ポジ情報CCC

頭からループ処理で決済していった場合

for i = 0 to 2
 決済処理( : 以降を消す)
next

//i = 0 の処理後
1行目 : BBB
2行目 : CCC
3行目 :

//i = 1 の処理後
1行目 : BBB
2行目 :
3行目 :

//i = 2 の処理後(3行目を消しているが、元々何もないので変化なし)
1行目 : BBB
2行目 :
3行目 :

1行処理するごとにポジション情報が上の行に詰めて保存されるから注文が残る
302Trader@Live!:2014/01/12(日) 11:40:20.12 ID:BAVd6w3w
>>295
逆に下から消していく処理の場合

for i = 2 to 0  i--
 決済処理( : 以降を消す)
next

//i = 2 の処理後
1行目 : AAA
2行目 : BBB
3行目 :

//i = 1 の処理後
1行目 : AAA
2行目 :
3行目 :

//i = 0 の処理後
1行目 :
2行目 :
3行目 :

これで全てのポジションを決済できる。
だから全決済は逆から処理させる
303Trader@Live!:2014/01/12(日) 12:10:29.93 ID:Ritj0CGJ
プログラマ相手ならポジション情報は配列じゃなくプールとかコレクションとか呼ばれるものなので、
数が増減する可能性があるときは扱いに要注意で済む話
プログラマ以外ならポジション情報は配列じゃないと言われても???なんだろうな
304Trader@Live!:2014/01/12(日) 12:38:43.04 ID:QBdgCLUC
pivotラインの週ライン、月ラインは、毎日変化するものなのですか?
例えば月曜日の週ラインは先週の月〜金までのデータで作成すると思う
のですが、火曜日のラインは先週の火〜今週の月のデータで作成する
のでしょうか?それとも先週の月〜金のデータをそのまま使用するの
でしょうか?
305295:2014/01/12(日) 12:42:07.63 ID:nkl28SX8
おお、すごく解り易い解説ありがとうございます!
皆さんのおかげで解決致しました!
ありがとうございました! <(_ _)>
306Trader@Live!:2014/01/12(日) 12:53:04.00 ID:BTiPWe7z
>>304
プログラムがタコだと、1時間毎に変わるぞ。
307Trader@Live!:2014/01/12(日) 15:39:06.87 ID:QBdgCLUC
もしそうだとすると、月、週、日の全てのpivotラインが、常時変化している
ということになりますが、本当ですか?
308298:2014/01/12(日) 16:44:40.81 ID:HmSh0E9V
どうやら杞憂だったようだ。
教えてくれた人ありがとう
309Trader@Live!:2014/01/12(日) 22:07:32.57 ID:vVn1PGHs
教えてください。
windows8のタッチパネルでMT4を起動しているのですがasur ultrabook-P3
なんですが、タッチだとMT4上では右クリックできなくて、テンプレート等
読めないんですが、何か策ありましたら、御教示ください。よろしくお願いします
310Trader@Live!:2014/01/12(日) 22:22:36.59 ID:QW4bIIep
EAを作りはじめて3年経ったんだが。
まだ納得してないので運用してない。種銭がないのも理由だが。

仙人のようにEAを作り3年経てば、
誰でもそうなんだろうけど壮大なEAに成長していくな・

リアル投入は後1年ぐらい掛かるわ。
311Trader@Live!:2014/01/12(日) 22:55:49.08 ID:BTiPWe7z
うなぎ焼きの世界では、
串打ち3年、裂き8年、焼きは一生というからね

思う存分時間を掛けたらいいと思うよ。
そのうちFX自体が規制対象になるかもしれないけど。
312Trader@Live!:2014/01/12(日) 23:21:29.62 ID:QW4bIIep
作れば必ず、ちょっとでも前に進む。
考えたロジックに近づいていくのが楽しい。

手段が目的になってるなあ。
313Trader@Live!:2014/01/13(月) 07:52:28.75 ID:fZfevdUC
>>309
メニュー使えば。テンプレートなら
 チャート→提携チャート
314Trader@Live!:2014/01/13(月) 10:14:12.94 ID:s5uLup0F
そんなやり方じゃ儲かるEAは永久に完成しない
出来上がったころには相場の様相が変化している
それの対応にまた数年?www
315Trader@Live!:2014/01/13(月) 12:28:04.34 ID:pzW1Kju+
スレの皆様

以前、WindowsXPでMT4がインストールできない旨の質問をさせていただいたものです。

Windows7にインストールしたフォルダをそのままWindowsXPにコピーして実行したら起動できました。
どうやら、MT4のインストーラーの問題のようです。
いろいろとコメント等ありがとうございました。
お騒がせし申し訳ございませんでした。
316Trader@Live!:2014/01/13(月) 12:30:26.19 ID:2lF/ZJM0
pivotポイントのインディケーターの期間の区切りをラインで繋げたくないんですが
どうすればいいでしょうか
317Trader@Live!:2014/01/13(月) 12:35:04.38 ID:fZfevdUC
どのインジの話か不明なのでわからんな。
まぁ多分EMPTY_VALUEを入れれば消えるのでは。
318Trader@Live!:2014/01/13(月) 12:56:17.65 ID:2lF/ZJM0
ttp://mt4-indicator.info/Pivot.jpg
横線表示だけで、縦線を消したいのです。
MetaEditorで色々試してるんですが、わかりません。
どなたかよかったら教えてください。
319Trader@Live!:2014/01/13(月) 13:04:05.14 ID:nFSp1ExK
線をドットにするのがラクかな?
320Trader@Live!:2014/01/13(月) 13:08:34.25 ID:2lF/ZJM0
ttp://www.abysse.co.jp/mt4/indicators/Pivots_Weekly.mq4
これなんですけど、どうすればいいでしょうか
昨日一日潰しちゃいました
321Trader@Live!:2014/01/13(月) 13:40:25.62 ID:nFSp1ExK
>>320
SetIndexStyle(0,DRAW_LINE,EMPTY);
  ↓
SetIndexStyle(0,DRAW_ARROW,EMPTY);

これで我慢する。
322Trader@Live!:2014/01/13(月) 13:50:22.35 ID:nFSp1ExK
// ちなみに、EMPTY_VALUEを入れる方式はこんな感じかな?

S3Buffer[i]=S3;
R3Buffer[i]=R3;

}

// ここから追加
for(i=1;i<Bars-1;i++){
if(PBuffer[i] != PBuffer[i-1] && PBuffer[i-1] != EMPTY_VALUE) PBuffer[i] = EMPTY_VALUE;
if(S1Buffer[i] != S1Buffer[i-1] && S1Buffer[i-1] != EMPTY_VALUE) S1Buffer[i] = EMPTY_VALUE;
if(S2Buffer[i] != S2Buffer[i-1] && S2Buffer[i-1] != EMPTY_VALUE) S2Buffer[i] = EMPTY_VALUE;
if(S3Buffer[i] != S3Buffer[i-1] && S3Buffer[i-1] != EMPTY_VALUE) S3Buffer[i] = EMPTY_VALUE;
if(R1Buffer[i] != R1Buffer[i-1] && R1Buffer[i-1] != EMPTY_VALUE) R1Buffer[i] = EMPTY_VALUE;
if(R2Buffer[i] != R2Buffer[i-1] && R2Buffer[i-1] != EMPTY_VALUE) R2Buffer[i] = EMPTY_VALUE;
if(R3Buffer[i] != R3Buffer[i-1] && R3Buffer[i-1] != EMPTY_VALUE) R3Buffer[i] = EMPTY_VALUE;
}
// ここまで追加

//----
return(0);
}
//+------------------------------------------------------------------+
323Trader@Live!:2014/01/13(月) 14:05:33.95 ID:2lF/ZJM0
ID:fZfevdUCさん  ID:nFSp1ExKさん
ありがとうございます。>>321の方法にしました。
スルーされると思いましたが、相手してくれてありがとうございます。
324Trader@Live!:2014/01/13(月) 17:19:21.52 ID:UHQWMyxZ
メタクオーツ本サイトから落としたMT4って今年に入って自動アップデートされたみたいだけど(Build574?)(完全日本語対応?w)
今まで使ってたFXDDから落としたヒストリーデータをインポートしても最初は使えるが、
MT4再起動すると何かのタイミングでヒストリーデータが自動更新?されているのか
アップデート待機中のまま動かなくなるのだが回避する方法は無いでしょうか?
325Trader@Live!:2014/01/13(月) 17:26:36.11 ID:HoS8HEOc
ObjectCreateで損益を表示するようにしてます。

で、現在、order lots()と建値から現在の獲得pipsを算出して、かけて・・・@

例:4000

と表示するようにしてますが、

希望例:4,000

と表示するようにするためにはどーしたらいいのでしょうか?
@の格納変数型を変えればいいのでしょうか?
326Trader@Live!:2014/01/13(月) 17:28:15.95 ID:nFSp1ExK
>>325
3桁毎にカンマを入れる関数を作るとか。
327Trader@Live!:2014/01/13(月) 17:30:11.45 ID:1t4d5fD9
>>313
いつも右クリックでやってんだ、メニューにあったんですね。
ありがとうございました。
328Trader@Live!:2014/01/13(月) 18:05:00.12 ID:kzUKpPiW
EAが売買した時に表示されるレート同士を結ぶ点線の色はどこで変えられますか?
329Trader@Live!:2014/01/13(月) 22:41:28.57 ID:u49+WF2i
>>314
相場で食べなきゃ生きていけないという環境なら。
リアル投入するけど。そこまでじゃないからね。

というか。みんなどれぐらいの時間をかけてEA作って、どれぐらいテストして
リアル投入してんだろ。
330Trader@Live!:2014/01/13(月) 23:09:42.19 ID:JWwnBGQg
一年前にForexのMT4デモ口座を開設した。
今年PCを新調したのでMT4をインストールし直そうとしたらパスワードを思い出せない。
そこでやむを得ず新たなデモアカウントを取得したんだけどどこか以前と違う。

以前のは一年前にMT4デモ口座を作ってからずっと使い続けられている。
それが今回インストールしたら60日で期限が切れてしまうという。

そして今回のはインストール時にStandardかProかを選べと迫られた。
以前はそんなこと聞かれた記憶が無い。

しかもProを選ぶとチャートの通貨名がUSDJPYProみたいに最後にProが付けられる。
以前はこんなこと無かった。普通にUSDJPYだった。

以前の方が良かったな(´・ω・`)
331Trader@Live!:2014/01/13(月) 23:36:06.44 ID:nFSp1ExK
>>329
豆乳まで5年掛かったよ。
裁量ではちまちまと殺ってたけど。
332Trader@Live!:2014/01/13(月) 23:48:24.29 ID:HoS8HEOc
ObjectCreateで損益を表示するようにしてます。

で、現在、order lots()と建値から現在の獲得pipsを算出して、かけて・・・@

例:4000

と表示するようにしてますが、

希望例:4,000

と表示するようにするためにはどーしたらいいのでしょうか?
@の格納変数型を変えればいいのでしょうか?
333Trader@Live!:2014/01/13(月) 23:51:59.06 ID:lpHyPvmJ
>>332
レスついてるのに無視して同じ内容で重複質問とか死ねカス
334Trader@Live!:2014/01/14(火) 01:45:57.74 ID:ZXg2rcAb
>>332
string fmt(int v)
{
  if (v >= 1000) {
string s = "000" + v;
int n = StringLen(s);
return(fmt(v / 1000) + "," + StringSubstr(s, n - 3));
  }
  return(v);
}

void init()
{
  Print(fmt(0));
  Print(fmt(1));
  Print(fmt(123));
  Print(fmt(1234));
  Print(fmt(123456));
  Print(fmt(1234567));
}
335Trader@Live!:2014/01/14(火) 22:20:52.38 ID:XJNLNfUW
334
できない。

void init()
{ 〜

なんかちがってねーか?
336Trader@Live!:2014/01/14(火) 22:24:31.40 ID:vK41tpo8
バカには無理
337Trader@Live!:2014/01/14(火) 22:26:22.95 ID:XJNLNfUW
334

読み解いたらできた。さんきゅ。
しかし、
string fmt(int v)
この使い方は初めてみたわ。
勉強になった。有難う御座いました。
338Trader@Live!:2014/01/14(火) 22:40:54.09 ID:ZXg2rcAb
まぁ負の値や小数点以下には対応してないけどな。
339Trader@Live!:2014/01/15(水) 11:26:50.51 ID:lEuyhA9N
配列の要素数に限界がありますか。
ArrayResize()
のバックテストで、当初は問題なかったのに途中から
Cannot resize the Array
とエラーがでるようになりました。

配列の要素の数が原因にあるような気がします。
340Trader@Live!:2014/01/15(水) 12:03:18.83 ID:/+cxqWC2
物理的なメモリの限界や、
int で表記できるインデクス値の限界は必ず存在するでしょうけど、
実際どのくらいの要素数を確保しようとしてるんです?
341Trader@Live!:2014/01/15(水) 12:19:36.33 ID:lEuyhA9N
配列の数はこれぐらいです。
double arrayA[num][3][2917]で

ArrayResize(arrayA,num)
numの値が3770辺りでエラーが発生します。

が、それが本当に原因か未定です。
342Trader@Live!:2014/01/15(水) 12:33:04.50 ID:ZpIJm2uO
それだと250MBくらいだからまぁだめな可能性もあるな。
そのサイズのを複数持ってたり、頻繁にresizeしたりするとフラグ
メンテーションが起きて連続領域として取れずにエラーになるかも
知れない。
343Trader@Live!:2014/01/15(水) 12:45:53.82 ID:lEuyhA9N
>>342さん、>>341さん
ありがとうございます。
他にも大きい多次元配列がありますので、かなり疑わしいですね。
ちょっと工夫してみます。
344Trader@Live!:2014/01/15(水) 12:47:07.29 ID:lEuyhA9N
あいや。>>341でなくて>>340さん
ありがとうございました。
345Trader@Live!:2014/01/15(水) 21:15:10.92 ID:7SsMA4wT
profileにセーブしたんですが、アイコン→プロパティ→Profileを
見てみるとセーブしたフォルダがありません
XPの時はうまくできたのですが、7からできなくなったようです。
OS上の設定でしょうか?
346Trader@Live!:2014/01/15(水) 22:24:15.40 ID:/+cxqWC2
>>345
互換性フォルダに隠されているとか?
347Trader@Live!:2014/01/15(水) 23:17:10.47 ID:oMlVdZSc
さっぱり分かりませんタスケテください・
int pBar=-1;
int start() {

static int bb=0;
if(pBar==Bars) return(0);
pBar=Bars;

int i;
int counted_bars=IndicatorCounted();
int limit = Bars - counted_bars -1;

for(i=limit; i>=0; i--) {

if(i<=3){
mid[i]=bb;
bb++;
}
}
bb--;
SetIndexLabel(0,mid);
}
直線を引くだけのインジを作ったのですが、最後のbb--;をつけないと0,1,2,4,5,6〜となってしまいます。
足した直後に引いてるのになんで平行ではなく斜線ができるのでしょうか??ずっと3じゃないんですか??
348Trader@Live!:2014/01/15(水) 23:42:26.46 ID:/+cxqWC2
>>347
bb++; を消せばいい
349Trader@Live!:2014/01/15(水) 23:44:36.87 ID:aXB8gkBx
EAを稼働していて、パラメータを再設定したい時
チャートで「右クリ」→「エキスパートアドバイザー」→「設定」を操作しても
パラメータ画面が、出る時と、出ない時があるのだが、どうしてだか分からない。

この違い分かる人いますか?
350Trader@Live!:2014/01/15(水) 23:47:50.93 ID:ZpIJm2uO
EAのstart()が処理されている間は出ないが、終わるまで待って出す
とかやってないからじゃね。
351Trader@Live!:2014/01/15(水) 23:59:36.03 ID:aXB8gkBx
>>350
なるほど、そういう理由ですか。
分かりました。ありがとうございました。
352Trader@Live!:2014/01/16(木) 00:00:43.02 ID:Wm91wwVV
デモ用に取得したMT4のアカウントのパスワードを忘れてしまった。
登録時に使ったメアドは捨てアドでもう使ってないからそこにパスワードを送ってもらうのも不可能。

ローカル側にパスワードって保存されてないかな?
MT4フォルダとかユーザーフォルダとかに。
353Trader@Live!:2014/01/16(木) 00:57:21.18 ID:j+OASjgl
保存はされてるけど、普通には見えないと思う。こんなのもある
ttp://www.softgate.co.jp/ja/resources/blog/item/20140111-mt4-password-recovery-ja
354Trader@Live!:2014/01/16(木) 04:39:27.20 ID:93ssEuOW
>>345
Terminal.exe のプロパティを開いて、「管理者として実行する」にONにして起動するといいよ。
355Trader@Live!:2014/01/16(木) 13:39:42.00 ID:Z5vcdqhR
>>354
試しましたが以前セーブしたフォルダは現れません
356Trader@Live!:2014/01/16(木) 13:55:55.15 ID:r2z48Klp
97年頃の4時間足が見れる業者ないですか?
357Trader@Live!:2014/01/16(木) 18:16:52.45 ID:nZ9X7Mpg
>>356
そのレベルだと、古いヒストリカルデータを買うしか無い
358Trader@Live!:2014/01/16(木) 19:46:23.10 ID:tx1ze+Jz
>>353
> ただしビルド 509 専用です。

orz・・・
359Trader@Live!:2014/01/16(木) 20:14:23.79 ID:ccNETF4W
今まだMT4起動できるんなら、メールボックスのregistration ってメールにパス書いてあるけど
360Trader@Live!:2014/01/16(木) 20:24:44.79 ID:tx1ze+Jz
>>359
うん、まだ起動できるよ。
でもうちのMT4ちゃん、メールボックスが無いんだよ。
2012年の末あたりにインストールしたMT4だからそんなに古くないと思うんだがなぁ・・・
361Trader@Live!:2014/01/16(木) 20:34:46.65 ID:nx53Fpz8
EAを動かした時のログファイルというのがあるらしいが、俺のやつには保存されてない。
「保存しない」設定とかできるのか?
そういうのを設定した覚えが全く無いのだが。
362Trader@Live!:2014/01/16(木) 21:04:27.61 ID:cm0asMB7
どなたか教えていただけませんでしょうか?

三空という方の作った、ボリンジャーバンドのインジケーターを導入したの
ですが、チャートには矢印が表示されるのですが、肝心の音が出ません。
パラメーターでいじれるのは「音をならさない時は0 鳴らす時は1」という
ものだけでもちろん1にしてあります。

ウィンドウズ側の設定ではないと思うのですが・・・。もちろん、
MT4の音設定も有効にしてあります。OSはXPです。
音はこのさい変えられなくてもいいです、とにかく鳴ってさえくれれば。
どなたか鳴らし方を教えていただけないでしょうか?
(キーワード「三空 MT4 ボリンジャーバンド」直リンしていいかどうか
わかりませんので、これで・・・)。
363Trader@Live!:2014/01/16(木) 21:12:32.72 ID:nZ9X7Mpg
>>362
他の音のなるインジはどうなの?
364Trader@Live!:2014/01/16(木) 21:37:33.16 ID:j+OASjgl
>>362
MT4のsoundsフォルダに、通貨ペアとタイムフレームに応じた
ファイル名でサウンドファイルを置けばいいみたい。

USDJPY 5分足なら usdjpy5.wav みたいな感じで。
365Trader@Live!:2014/01/16(木) 22:01:29.46 ID:cm0asMB7
>>363
すいません、インジを使うのはこれが初めてです。
立ち上げた時にはちゃんと「ポロロン」という音は出ます。
>>364
やってみますが、ただwavファイルの名前を変えて置くだけで
よいのでしょうか。あ、やってみます。

追記
ウィンドウズ7のパソコンに入れてもやはり表示だけで音は出ませんでした。
366Trader@Live!:2014/01/16(木) 22:08:19.56 ID:cm0asMB7
・・・ usdjpy1.wavでやってみましたが・・・・ダメでした・・・・。
367Trader@Live!:2014/01/16(木) 22:25:32.61 ID:r2z48Klp
>>366
ツール-オプション-音声設定で有効になってんの?
368Trader@Live!:2014/01/16(木) 22:26:13.42 ID:r2z48Klp
>>357
無理かorz
369Trader@Live!:2014/01/16(木) 22:35:48.39 ID:cm0asMB7
>>367
なっています。

いま、MT4を再インストールして、soundフォルダに「usdjpy1.wav」を置いて、
他のインジは入れずにこれだけ入れてやってみましたが・・・・
表示はされるけど、音は出ません・・・・。

なんとかならないでしょうか?
別にこのインジにこだわりません。ボリバンの2σを踏んだら音がなるように
できればいいだけなのですから・・・。困った・・・。
370Trader@Live!:2014/01/16(木) 22:52:56.25 ID:bSWMLg+0
>>369
そのインジでは、何ていうサウンドファイル名が指定されてるのよ。

そのファイル名が「usdjpy1.wav」なの?
「usdjpy1.wav」って適当にそういうファイルを置いただけじゃないの?

インジを使うのが初めてなんじゃなくて、
MT4も初めてで、そもそもPCも超初心者なんじゃないの?
371Trader@Live!:2014/01/16(木) 22:56:43.60 ID:93ssEuOW
>>355
管理者として実行するにONしてから、正しく保存されるようになるよ
372Trader@Live!:2014/01/16(木) 22:57:14.78 ID:93ssEuOW
>>360
Mailboxはログインしないと見れないね
373Trader@Live!:2014/01/16(木) 22:59:42.24 ID:D0XrxCtt
Liquidity Connection というのはどこのブローカーもしくはサーバーでしょうか?
374Trader@Live!:2014/01/16(木) 23:15:13.05 ID:cm0asMB7
>>370
そうですね。プログラムの知識はまったくありません。
「usdjpy1.wav」というのは、>>364で教えていただいたことに従いました。
ググッたら、「音を変えるには」ということで三空氏のインジについての
他の方の説明ででてきました。プログラムを開いて見ることはできませんが、
たぶんそういう指定があるのだろうと判断しました。

かなりググったんですが、誰も「音が出ないぞ」と文句言ってないんですよ
ねえ・・・。
375Trader@Live!:2014/01/16(木) 23:57:09.72 ID:53QAmYoS
ググってみたけど、[BBw_1.06,ex4]ってやつかな。

初歩的な事だけど、画面左のナビゲーターの欄のCustom Indicatorsの中に、
ダウンロードした [BBw_1.06]は表示されてるよね?
その「BBw_1.06」をチャートにドラッグドロップはしてある?
チャートにボリンジャーバンドは表示されてる?
376Trader@Live!:2014/01/17(金) 00:03:22.29 ID:cm0asMB7
>>375
レスありがとうございます。
あれから指標も無視してググッっては入れ、ググッては入れしました。
結局、三空氏のもので音を出すことはできませんでしたが、
BoliToucher、というインジを併用することで解決しました。
BoliToucher音は調べてみると「alert2.wav」というのが鳴っていましたので、
その名前で別のファイルを入れてうまく変えられました(「alert2.wav」では
ちょっと目立たなかったので)。

ちょっとしたヒントをいただいたおかげでどうにか自己解決できました。
ありがとうございました。
377Trader@Live!:2014/01/17(金) 00:08:58.27 ID:9KFdLvAo
>>376
俺もBBw_1.06,ex4を入れてみて、一応音は鳴るんだけど、
音声ファイルが無いことによるエラー音なんだよね。

デフォルトで用意してある音声ファイルを鳴らすようになってないみたいだから、
やっぱ>>370のように、音声ファイル名が知りたいところだな。

三空さんのとれまがファイナンスのところ見たけど、音声ファイル名については触れてないから、
なにか三空さんが公開しているインジで使ってる一般的なファイル名があるのかもしれん
378Trader@Live!:2014/01/17(金) 00:27:17.06 ID:0jX5xB91
デコって確認した。usdjpy1, usdjpy5, usdjpy15, gbpjpy1, ... って感じ。
対応通貨はUSDJPY,GBPJPY,EURJPY,EURUSDのみ。
タイムフレームはM1,M5,M15のみ。
試しにUSDJPYのM1でusdjpy1.wavをおいたらサウンド鳴ったよ。
379Trader@Live!:2014/01/17(金) 00:54:16.12 ID:JzfvKq/B
>>378
うーん、やったけど鳴らなかったんですよねー。
他のインジとのかねあいとかもあるのかな。
まあ、現体制でやってみます。
380Trader@Live!:2014/01/17(金) 15:14:03.97 ID:Dvcvye+z
MT4を立ち上げるたびに緑色のローソク足とグリッドの初期チャートが表示されるんですが
表示させないようにするにはどこを設定すればいいでしょうか?
381Trader@Live!:2014/01/17(金) 16:11:40.90 ID:9KFdLvAo
>>380

ツール→オプション→サーバタブ
スタート時の個人設定とデータを維持するにチェック

で、どう?
382Trader@Live!:2014/01/17(金) 16:38:04.97 ID:mD9rK35m
Brocoのデモってまたつかえるようになってるの?
383Trader@Live!:2014/01/17(金) 16:55:13.01 ID:wIBiI/3w
http://www.brocompany.com/
サイトは復活してたが、運営されているのか不明っぽ。
フォーラムも空っぽ。
384Trader@Live!:2014/01/17(金) 17:03:53.69 ID:mD9rK35m
ありがとう、なんか作れないんだよな
385Trader@Live!:2014/01/17(金) 17:31:27.80 ID:JzfvKq/B
ボリバンタッチャー。聞き逃さないように目立つ音にしたけど、シンプルな
ものに戻しちゃった。何連発かで鳴ると、そのたびにホンの少し思考が止まって
判断がにぶっちゃう。・・・・気がする。
386Trader@Live!:2014/01/17(金) 17:47:52.09 ID:wIBiI/3w
本人が使ってないものは、どこか不便なところがあるんだよ。
387Trader@Live!:2014/01/17(金) 18:48:23.88 ID:/H/gUtGu
んなことぁあるまい
印字なんてものあ、いろんな使い方見方ができる
凡人は気が付かない使い方があるのさ
388Trader@Live!:2014/01/17(金) 21:46:24.43 ID:KC9q1+85
サイバーエージェントのデモ口座を開設したいんですが、
他の業者と同じように架空の住所や氏名でも問題ないでしょうか?
389Trader@Live!:2014/01/17(金) 22:15:49.75 ID:wIBiI/3w
>>388
ダメだね。
連絡が取れないことがわかるとデモ口座取り消されるぞ。
390Trader@Live!:2014/01/17(金) 23:14:30.69 ID:KC9q1+85
>>389
ありがとうございます
メールアドレスだけはフリメにしようと思います
391Trader@Live!:2014/01/18(土) 00:18:21.78 ID:9LZ/1abj
>>381
これなのかdefaultでプロファイルにセーブしたからなのかわかりませんがうまくいきました
thxです
392Trader@Live!:2014/01/18(土) 06:50:16.60 ID:0Sfb0HRx
>>383
クライアントを落とせてデモ鯖も生きてるけどデモ口座開設は出来ない
http://files.brocompany.com/soft/bc4/bc4setup_trade.exe

faiさんのブログを見たらironに買収された模様だからironでデモ開設した方がいいと思う。

ここでも悪くない。

FOREX EXPO Africaのスポンサー企業
http://www.itcfx.com/
393Trader@Live!:2014/01/18(土) 06:51:20.79 ID:0Sfb0HRx
CFDにTwitterがあったりもする
394Trader@Live!:2014/01/18(土) 11:11:11.65 ID:Us49A+G9
昔インストールしたデモ口座用MT4と同じMT4をダウンロード&インストールしようと思ってるんだけど
どこの会社のデモ口座用MT4をダウンロードしてきたのかすっかり思い出せない。

デモ口座のログイン先サーバー名は"NordGroupInv-Demo"というところなんだけど
この情報からどこの会社のデモ口座用MT4をインストールしたかわかる?
395Trader@Live!:2014/01/18(土) 11:55:42.77 ID:qTD2T9ca
396Trader@Live!:2014/01/18(土) 13:28:58.95 ID:Us49A+G9
>>395
ありがとう。NORD FXっていうところか。
でもこんなマイナーな、日本語ホームページすら持ってないところからMT4のデモ版なんて落としたっけなぁ('A` )?
しかもいまサイトみてるけどデモ版のMT4なんて見当たらないぞ。

自分が1年前にデモ版MT4を落としてきたのがNORD FXからかは定かじゃ無いけど
このデモサーバーは数ヶ月ごとにアカウント取り直さなくてもずっと稼働させることができて
重宝してるんだよね(他のデモ版はたいてい数ヶ月おきにアカウントの再取得が必要)。

でもデモ版MT4のダウンロード先が http://nordfx.com に見つからない・・・
397Trader@Live!:2014/01/18(土) 13:41:14.75 ID:OiX8CKqW
どこの業者のでもいいから新たにMT4インストールして、
以前のMT4からconfig\NordGroupInv-Demo.srvをコピれば
新しいMT4でそのサーバにデモアカウント作れる。
398Trader@Live!:2014/01/18(土) 16:33:42.46 ID:fqu1ekzy
nordfx.com のは
nordfx.com/MetaTrader_4.html
ここからダウンロードできたよ。
デモ口座も普通に作れた。
399Trader@Live!:2014/01/18(土) 19:03:47.13 ID:DkOjR2no
再度教えてください。
Liquidity Connection というのはどこのブローカーもしくはサーバーでしょうか?
400Trader@Live!:2014/01/18(土) 20:01:40.46 ID:fqu1ekzy
>>399
myfxbest.com/manual.html
たぶんこれ
401Trader@Live!:2014/01/18(土) 20:03:48.21 ID:fqu1ekzy
>>400 のは bostontechnologies.com/demos-and-downloads/mt4-downloads/index が本物みたい、ごめん
402Trader@Live!:2014/01/18(土) 20:46:45.98 ID:Us49A+G9
>>398
ありがとう。
そこからダウンロードしたクライアントでデモ口座作れた。
サーバー名も一緒だからアカウントの再取得をすることなく
ずっと使い続けられると思う。

>>397
業者ごとにMT4クライアントがあるのはそのファイルのおかげだったんだね。
そのsrvファイルさえコピーしてしまえば複数の業者のアカウント持っていても
一つのMT4で全業者に対応できるようになると。
403Trader@Live!:2014/01/19(日) 00:34:42.96 ID:cd2jGm5S
brocoが復活したという話は本当?
サイトが見れるようだけど
404Trader@Live!:2014/01/19(日) 00:52:03.08 ID:7Ty/zxqL
>>403
サイトは観れるが運営されていないようだよ。
405Trader@Live!:2014/01/19(日) 04:05:36.46 ID:DPK1a/6l
>>400
>>401
ありがとうございます。
406Trader@Live!:2014/01/19(日) 22:01:51.23 ID:mWzNICiT
if文の中の条件式が長いので2行に分けたいのですが、継続行であることを示す方法が分かりません。
リファレンスを見たのですが、・・・
407Trader@Live!:2014/01/19(日) 22:09:23.84 ID:TzFfwro9
どこでも適当に開業すればおk。
408Trader@Live!:2014/01/19(日) 22:17:40.66 ID:7Ty/zxqL
if ( A && B)

if (A
&& B)
と書けるけど

if ( A &
& B)
これはだめだろうw
409Trader@Live!:2014/01/19(日) 22:31:07.33 ID:mWzNICiT
>>407
そうなんですね。コンパイルエラーも出ず結果も同じでした。
なんだか拍子抜けの感じですw
ありがとうございました。
>>408
コンパイルエラーが山ほど出ましたw
ありがとうございました。
410Trader@Live!:2014/01/19(日) 22:45:36.01 ID:TzFfwro9
だから適当なところだと言ってるだろ。
411Trader@Live!:2014/01/19(日) 22:51:08.57 ID:bZ3MumQr
if(A
&& B
&& C
)

って書いておくと、とりあえず条件Cを無くした結果を見てみたい時に

if(A
&& B
//&& C
)

ってすればいいだけだから、復元するのにも便利
412Trader@Live!:2014/01/19(日) 23:08:25.19 ID:TzFfwro9
if (true &&
  A &&
  B &&
  true)

if (false ||
  A ||
  B ||
  false) {

とかな。どれにしてもおれは使わないが。
413Trader@Live!:2014/01/19(日) 23:38:54.83 ID:fe3TG2Sq
if (true
&& A
&& B
&& C
)
ってやればどこでもコメントアウトできる。
お試しレベルのコーディングならありといえばあり。
414Trader@Live!:2014/01/20(月) 00:07:20.50 ID:fe3TG2Sq
>>412 と派手にかぶってた。スレ汚しごめん。
415Trader@Live!:2014/01/20(月) 16:25:43.63 ID:a/RpAVMx
MT4取扱業者で両建て禁止のところ(例えばOANDAとか)では、EAを二つ動かした時に売り買いが交錯した時には建てられないということでしょうか?
416Trader@Live!:2014/01/20(月) 16:29:20.37 ID:Ka4CM2kP
はい。
417Trader@Live!:2014/01/20(月) 16:44:32.75 ID:a/RpAVMx
早速の回答ありがとうございます
まじですか!
それじゃ結局のところEAは一つしか使えないのと同義ですね
418Trader@Live!:2014/01/20(月) 17:39:03.93 ID:W8spYZX9
起動するたびに以前閉じたはずのチャートが開いているんですけど、
どうしたら、次回からは開かないようにできますか?
419Trader@Live!:2014/01/20(月) 17:51:56.36 ID:f+fHMYIT
420Trader@Live!:2014/01/20(月) 22:12:11.41 ID:rt627geY
両建て禁止などという募金箱みたいな業者なんか使えるかよww
421Trader@Live!:2014/01/21(火) 01:07:13.76 ID:MqfDGJbs
>>403
broco ironで検索してみましょう。

クライアントを落としてもデモ口座開設は出来ませんよ。
MT4は最新のbuild509がインストールされるけど日本からはどうやらダメみたい
422Trader@Live!:2014/01/22(水) 02:15:30.36 ID:0gw6Y9gV
MT4で米10年債のチャートの出し方教えてください
423Trader@Live!:2014/01/22(水) 11:46:04.45 ID:hQk5bh4R
価格出しても意味無いんだよね
利回りを見せろと
424Trader@Live!:2014/01/22(水) 11:51:10.18 ID:bD7CHcGm
>>422
米10年債 のCSVデータ手に入れて、MT4で読みこめばチャートでるかも
425Trader@Live!:2014/01/23(木) 12:34:42.58 ID:R0QKUNo/
時間成り行きエントリー、エグジットができるEAあったらおしえてください
426Trader@Live!:2014/01/23(木) 18:22:51.67 ID:/Zl6+1xC
MT4についてるシグナルって使ってる方はいますか?
なんだかすごい儲かっているものばかり配信されているようですが、
イマイチ現実感がなくて

実際に使っている方に感想を聞いてみたいです
427Trader@Live!:2014/01/23(木) 18:29:02.43 ID:PXIjV5+Q
>>426
私も聞いてみたい。

大抵のシグナル配信サービスは、
3ヶ月から半年すると、今までみたこと無かったシグナルが
いつのまにか凄い儲ってる感出してるんですよね。

・・で、このシグナル良さそう!って飛びつくと、
全然儲からなくて、3ヶ月後にはまた別の素晴らしいシグナルが出てくるw
428Trader@Live!:2014/01/23(木) 19:07:17.86 ID:OZp+d1pp
ブラックボックスのEAなんていくらでも成績を誤魔化せるからな
過去にでかいDDくらったところでそうならないような条件を追加すれば良いだけだし
最悪その日時だけトレードしないようプログラミングされているようなものまである
429Trader@Live!:2014/01/23(木) 20:56:11.16 ID:diAsLO3g
逆に聞きたい。
この3ヶ月だけは儲けを出して、次の3ヶ月は損をするようなEAってどうしたらできるの?
一例でいいから示して欲しい。
430Trader@Live!:2014/01/23(木) 21:45:27.86 ID:C5zXon3u
EA作成と検証を繰り返して1か月の初心者ですが、
分かったことは、結局は相場の地合次第だな、ということです。
SMAのGCでもトレンド相場であれば爆益がでます。
数多のEAの中で特に優れていなくても、その時の相場の地合いに適していれば
利益が出て取り上げられますが、地合いの変化とともに消えていきます。
これがランキング上に泡のように現れては消えていくEAの正体なのでしょう。

でも、中には年間を通して利益を出しているものも、あることはあります。
何かを掴んでいるのでしょう。
それを目指しています。
431Trader@Live!:2014/01/23(木) 22:51:50.22 ID:C/afgWpU
MT4ってチャート上に表示された注文ラインをドラッグして注文価格変更ってできたっけ?
もしくはそれが出来るスクリプトとかってあったっけ?
432Trader@Live!:2014/01/23(木) 23:07:26.86 ID:cYHeJipW
手動で勝てないのに自動で勝てるわけ無い
433Trader@Live!:2014/01/23(木) 23:37:14.60 ID:UKU1SxZ3
>>431
今はできるよ
434Trader@Live!:2014/01/24(金) 00:04:06.00 ID:zKuFJYyO
>>433
さんくす
435Trader@Live!:2014/01/24(金) 00:09:10.28 ID:OkclNAmB
まだ鷹猫牛してくるねえ
436Trader@Live!:2014/01/24(金) 00:09:40.10 ID:OkclNAmB
誤爆ったスマン
437Trader@Live!:2014/01/24(金) 00:48:05.19 ID:zKuFJYyO
あとついでに、適当に利益が乗ったらストップを自動でブレイクイーブンに移動してくれるスクリプトかEAあったら教えて下さい
できれば同じ通貨内でもそれぞれのポジを指定できたら嬉しい
438Trader@Live!:2014/01/25(土) 02:36:32.98 ID:Tnox8mGW
下のサイトの手法が結構当たっているのですが、毎回手動で注文入れるのがめんどくさいです。
EAで簡単にできそうなのですが、まったくの初心者でも作れますか?
手法マスドライバーとかいうやつです。
http://fxshu.web.fc2.com/shuhou2.html
439Trader@Live!:2014/01/25(土) 15:11:52.71 ID:bsO1Hvjt
質問だけど
mt4で自動的に取引可能な最大ロット数で取引するにはどうしたらいいの?
いつもいちいちロット数の数字を設定してるんだけど
440Trader@Live!:2014/01/25(土) 15:29:11.74 ID:WJ6ZsKwb
どんな手法使ってんだよ。
自動でんなことしたら即死だぞ
441Trader@Live!:2014/01/25(土) 15:42:34.71 ID:bsO1Hvjt
ぼくは倍々ゲームがやりたいんだけど

10万でレバ100だったら 1000万の取引って自動でする方法あったら教えて
442Trader@Live!:2014/01/25(土) 15:44:32.72 ID:b8uQYh08
そんな倍々ゲームやったら自動的にバイバイになると思うよ
443Trader@Live!:2014/01/25(土) 16:03:04.98 ID:WJ6ZsKwb
売買タイミングは知らんが、それはやめとけ

そんなロットで勝ってるなら手法教えてくれ
444Trader@Live!:2014/01/26(日) 02:04:37.23 ID:Gfvom6yw
両建てOK、スプレッドの狭さ、最低ロット1000通貨単位で業者を選ぶとアルパリがベストのように思えるのですが、他にお勧めはありますか?
445Trader@Live!:2014/01/26(日) 20:41:07.13 ID:xRLZLy1T
MT4でバックテストする際に起きるティックファイルの容量制限を回避する方法はあるのでしょうか?
446Trader@Live!:2014/01/26(日) 20:54:50.51 ID:IPi473aw
期間を分ける。
447Trader@Live!:2014/01/26(日) 21:20:18.36 ID:acBVsnqR
もうMT5に乗り換えるしか
448Trader@Live!:2014/01/26(日) 21:23:23.15 ID:uBQdfxuI
MT5って両建て出来ないって本当なのですか?
449Trader@Live!:2014/01/26(日) 21:33:32.79 ID:tZWHtmdO
mt5使える業者ってどこだあるの?
450Trader@Live!:2014/01/26(日) 21:37:17.87 ID:zjV1TIYc
>>445
MT4に実行時にパッチを当てて
容量制限を回避できるソフトはある
451Trader@Live!:2014/01/26(日) 22:11:40.64 ID:8qFIuThe
FxPro.com-Demo02のサバを使ってますが
値がズレています
他に良いサバありませんか?ダウ先なども見られるところがいいです
452Trader@Live!:2014/01/26(日) 22:31:02.19 ID:zc6PygzS
fiboとか水平線引く時にローソク足に吸い付く設定があったはずなんですが
何処でしょうか?プロパティーやら右クリックしてもそれらしいのが出てきません
453452:2014/01/26(日) 22:46:37.76 ID:zc6PygzS
>>451
土曜早朝までやってた相場は滅茶苦茶だったから
どこもズレテルヨ、国内2社海外2社で見たけど


自己解決マウス感度でした50にしたら良い感じ
454Trader@Live!:2014/01/27(月) 00:18:05.76 ID:wvs8FbnX
>>438,439,441
質問するふりしてサイトの作者な気がしないでもないけども。

Account* 系の関数使えばできるよ。
EA起動時にエントリ開始するようにすればいいんじゃないかな。
455Trader@Live!:2014/01/27(月) 00:42:28.31 ID:BLinr8Lx
extern変数のパラメータを変更しバックテストで動かしてみると反映されされません
コンパイル後ナビゲータータブでそのEAのパラメータを見てみると反映されてるのですが動かしてみると元の数値のままです・・
何か分かる方はいらっしゃいますでしょうか?・・・
456Trader@Live!:2014/01/27(月) 01:01:13.63 ID:oVIorxGz
extern だからコンパイル関係ない。
MT4の expertparamater をクリックして
パラメータ入力タブで
パラメータ変更する。
457Trader@Live!:2014/01/27(月) 04:02:31.45 ID:/yfMapNy
同じEAを違う業者のMT4でバックテストすると、同じ価格同じ数量で売買されているにもかかわらず、1回1回のトレードの損益が違います。
スプレッドも同じに設定してあるし両社とも手数料は無料なんですが、なぜ違ってくるのでしょうか?
458Trader@Live!:2014/01/27(月) 04:09:38.58 ID:/yfMapNy
しかも両社とも売りも買いも、価格差 x 数量の金額より少ないです
459Trader@Live!:2014/01/27(月) 04:15:01.76 ID:FIN0ZWdl
違うことはないと思うけど、結果タブの内容を貼ってみ。
460Trader@Live!:2014/01/27(月) 05:01:16.37 ID:/yfMapNy
461Trader@Live!:2014/01/27(月) 05:09:47.24 ID:FIN0ZWdl
スワップが違うんだろう。
462Trader@Live!:2014/01/27(月) 06:17:22.02 ID:/yfMapNy
売りでも買いでも価格差 x 数量の金額より少ないのはなぜ?
463Trader@Live!:2014/01/27(月) 06:33:19.26 ID:FIN0ZWdl
スワップがマイナスの業者なんでは。
通貨ペアのプロパティで見てみ。
464Trader@Live!:2014/01/27(月) 11:15:07.21 ID:BLinr8Lx
>>456
それもやったんですがどういう風にパラメータ変更しても元の数値のままなんです・・
ちなみにextern変数だけ変更出来ず他は変更出来ます
465Trader@Live!:2014/01/27(月) 13:43:11.57 ID:OkUZ1hLK
ごめんなさい、モノホンの(MT4)初心者です。
既成品のインジがわりとうまく機能してくれるんで自分でも作りたくなりました。
文系出身でプログラムには皆目無知なんですが、
何を勉強すれば作れるようになりますか?
466Trader@Live!:2014/01/27(月) 13:43:18.64 ID:BLinr8Lx
解決しますた
467Trader@Live!:2014/01/27(月) 14:12:32.67 ID:2GAjsc0W
>>465
まず、
http://www.metasys-seeker.net/MQL4_Reference_ver1/MQL4_Reference_Contents.html
これを全部読んでおく。
単語の意味が解らない部分は飛ばして、最初から最後まで読む。
その後、使っているインジのうち、行数の少ないインジの mq4 ファイルをエディタで開いて眺める。

眺めた時の感想をこのスレに書けば、何を勉強したら良いか教えてくれると思うよ。
468Trader@Live!:2014/01/27(月) 14:13:09.82 ID:FTO4hZvI
>>465
MQL。
プログラムプログラムって構えず、見よう見まねでやってみ。
いきなり思った通りのものは作れないだろうけど、少しずつ頑張れ。
469Trader@Live!:2014/01/27(月) 14:28:32.15 ID:g72IC37o
いや、豊嶋さんの著作の『FXメタトレーダー入門』の方がいいでしょう。
リファレンスを全部読むより、入門書をさらっと概観して、モノを自作する方が勉強になるよ。

コードは自分でタイピングしないとなかなか身につかないけれど、
こういう勉強は、自分でアウトプットしつつじゃないと、要領が悪くなって、習得が遅くなるよ。

♯初心者にリファレンスを全部読め、というのは正直理解できない。。。
470Trader@Live!:2014/01/27(月) 14:28:37.09 ID:sFWw2bhQ
>>465
先ずアマゾンで初心者向けでカスタマーレビューの評判の良い本を3冊購入。
1冊ではだめ。分からないところに出くわしたら、それぞれを読み比べると理解しやすいい。
何となくわかってきたら、本にある適当なインジをメタエディターで眺め、
自分なりに少し改造してどこがどのように変わるか確かめる。
これを繰り返せば少しずつ身についていく。
本には、インジの模範的なソース(mq4ファイル)が載っているから、
それを見るのが一番の勉強になる。
あと、わからない語句類はググれば大抵わかる。

言うまでもないが、根性がないとダメ。
471465:2014/01/27(月) 15:00:55.52 ID:OkUZ1hLK
>>467-470
ありがとうございます。
いただいたレスを総合的に判断して頑張ります。
このスレの終わりまでに何か報告できるよう頑張ります。
ムリなら次スレで・・・(^^;;
472Trader@Live!:2014/01/27(月) 15:05:25.94 ID:2GAjsc0W
473Trader@Live!:2014/01/27(月) 15:24:17.02 ID:KD8MY/U3
>>472

58ページ以降の空白は何だろうね

昔保存したやつは30ページまでだったから、更新していくのかな
474Trader@Live!:2014/01/27(月) 15:52:01.83 ID:jR/a+1hn
そろそろ出るであろうMT4の次のリリースビルドでは、
MetaEditorがMQL5をサポートして、MetaQuotesとしてもMQL5を使ってね、
ってことになりそうだから、今から勉強するならMQL5のほうがほんとはいいような気もする。

けど、参考書がないか・・・。MQL4の知識が無駄になるわけではないから、そこはしょうがないかねぇ。
475Trader@Live!:2014/01/27(月) 16:18:46.85 ID:CQsjUNKm
>>469
> リファレンスを全部読むより、入門書をさらっと概観して、モノを自作する方が勉強になるよ。
> ♯初心者にリファレンスを全部読め、というのは正直理解できない。。。
これはご指摘の通りで、プログラミング言語の入門にはまったく適さないやり方です。
日本語文法をまったく知らない外国人が、国語辞書を一通り読めば日本語で意味の通る作文ができるのか?
というのと同じですね。

>>471
もう解決されたようですが、少しだけ補足を。
今までまったくプログラムを作った経験がないのならば
変数やデータ型、演算子、流れの制御(文)などのプログラムの基本概念の理解に手間取るかも知れません。
さいわいこれらの考え方は、MQL以外の言語で概念をつかめばMQLにも応用できますので
山ほど入門者向きの本が出ているC言語でこれらを理解するのも手です。
(C言語はMQLに非常に似ていますから)

あとは469さんの言う通り、面倒くさがらずに必ず自分でプログラムを書いて、エラーやバグがでるたびに修正して…
を繰り返すしかありません。ご健闘を祈ります。
476Trader@Live!:2014/01/27(月) 16:37:32.27 ID:FIN0ZWdl
また出たよ、C言語。お前、よっぽどCで苦労したんだろうな。

MQLがしたいならここだけ読めばいい。
http://book.mql4.com/
無駄な努力しなくても相当ハイレベルになれるぞw
477465:2014/01/27(月) 17:13:38.05 ID:OkUZ1hLK
>>472-476
引き続きありがとうございます。
2ちゃん歴10年になりますが、こんなに親切なレスをいただいたのは初めてです( ´Д⊂
みなさんに爆益あらんことを。
478Trader@Live!:2014/01/27(月) 17:23:06.33 ID:UgtYFVuC
MQL4とC言語の関係はなんと表現すればいいんですか?
例えばV C++はWindowsアプリケーションを書くための言語ですよね(?)
それはイコールC++なんですか?
同じくC言語というのは「一つだけ」しか存在しないんでしょうか

質問自体もしかしたら意味不明というか全く的外れかもしれませんが・・・
479Trader@Live!:2014/01/27(月) 17:27:36.82 ID:2zD09zNT
質問させてください。
history\サーバー名フォルダ\

の中に.hstファイルが保存されていますが
これをメモ帳で開くと中身が文字化けしています
どうすれば.hstファイルの中身が正常表示されるでしょうか?
480Trader@Live!:2014/01/27(月) 17:28:11.37 ID:FIN0ZWdl
MQL4、C、C++はコンピューター言語の1つ。
VC++はマイクロソフトの製品名(VisualC++)、Windows用のプログラムを
C++で作るための開発環境を提供するアプリケーション。
個々の言語についてはwikiでも読め。
481Trader@Live!:2014/01/27(月) 17:29:14.68 ID:FIN0ZWdl
>>479
それで正常。
hstの構造はヘルプに書いてある。
482Trader@Live!:2014/01/27(月) 17:51:39.55 ID:2GAjsc0W
>>478
> MQL4とC言語の関係はなんと表現すればいいんですか?

無関係。


> 例えばV C++はWindowsアプリケーションを書くための言語ですよね(?)
> それはイコールC++なんですか?
> 同じくC言語というのは「一つだけ」しか存在しないんでしょうか

C言語や、C++ というのは、ある種の規格だと思ったほうが良い。
http://ja.wikipedia.org/wiki/C%2B%2B
規格にはバージョン違いがあるから、必ずしも1つとは言い切れない。


その規格にもとづいて、 マイクロソフトが作ったのが VC++
Linuxで動かせるように誰かが作ったのが gcc
みたいな理解で良い。
483Trader@Live!:2014/01/27(月) 17:52:47.99 ID:2GAjsc0W
>>479
Hst2Csv みたいなツールで、 hst形式のファイルをテキストに変換しないと読めないぉ
484Trader@Live!:2014/01/27(月) 17:58:52.09 ID:FIN0ZWdl
>>482
無関係じゃない。MQL4の文法はCをベース、MQL5はC++をベースにしている。
あと、gccはGNUのコンパイラな。Linuxとは元々関係はない。
485Trader@Live!:2014/01/27(月) 18:06:59.21 ID:2zD09zNT
>>483さん
Hst2Csv使わせていただいているのですが、csvではなくtxtファイルで見る方法はないかと思い、質問しました
やはり文字コードの変更などでは読む事は出来ず、ツールを使って変換してからでないと読めないのですかね

回答ありがとうございました!!
486Trader@Live!:2014/01/27(月) 18:11:54.30 ID:FIN0ZWdl
CSVはテキストファイルだからメモ帳で読めるはずだが。
そのhst2csvは4本値以外何を出すんだ?
487Trader@Live!:2014/01/27(月) 21:06:08.06 ID:ywVddQM3
じゃあ「MT4とC言語の関係」は「VC++とC++の関係」と同じで

・C(規格)をベースに開発されたMQL4(一企業による製品名)
・C++(規格)をベースに開発されたMQL5 / VC++(どちらも一企業による製品名)

みたいな認識でいいのかな
初心者の巣窟みたいなスレにしてスマン
488Trader@Live!:2014/01/27(月) 21:08:50.78 ID:FIN0ZWdl
違う。
MQL4はCをベースにした別の独自言語。MQL5も同じ。
VC++とC++はMT4とMQL4の関係と同じ。
489Trader@Live!:2014/01/27(月) 21:14:41.95 ID:wvs8FbnX
>>487
おしい。
VC++はC/C++規格に基本的に沿ってる。
MQLは、MQL4はCベース、C++はC++ベースではあるが、規格に沿ってるわけではない。
なので、どっちかというと、CをベースにSmalltalkのオブジェクト指向を取り入れた、Objective-Cと分類的には近い。
もちろん、MQL4/5ともに、MT4/5の上でしか動かないので、Objective-Cとも違う存在だけどね。
490Trader@Live!:2014/01/27(月) 21:31:03.73 ID:FIN0ZWdl
MetaがC++ベースだと言ってるのにSmalltalkとかObj-Cとか、
なんで関係ない話を持ち出す人が多いんだろうね。
491Trader@Live!:2014/01/27(月) 21:36:16.17 ID:ywVddQM3
なるほどなんとなく理解できた
サンクスです
ほぼC++準拠のVC++と違いMQLは独自言語という事ですね
492Trader@Live!:2014/01/27(月) 21:45:51.55 ID:sSWAfliH
初心者のひとに向けて言うとしたら「Cがベース云々とかは気にすんな」だけどね。
書式とかの仕様に共通点がある(ように作ってある)ってだけで全く別の言語だから
MQL習得のためにCを!とかやる必要はない。

もっと言うとMQLプログラミングを始めるにあたっては本を買ったりする必要もない。
MQLはできることが限られている(MT4/5上でインジ、EAとして動作することに特化している)ので
習得は他の言語に比べて容易だ。
完全に日本語に翻訳されたリファレンスもweb上で見られるし
株取引が目的の言語のため、MQLで初めてプログラミングに触れる人が多いので
初心者向けのブログ等の記事も豊富だし
配布されているインジやEAは単機能のものが多く、内容が短いので読み解いて勉強するにも最適だ。
他の言語から入る必要など全くないよ。
493Trader@Live!:2014/01/27(月) 21:54:06.25 ID:wvs8FbnX
んだね、MQLがCベースかどうかはすでに他のプログラミング言語に馴染みのある人でなければ、
特に必要な情報ではないね。
似て異なるものを、あえて知る必要もないし。
DLL作るときになったら、そのときにCなりC++勉強すればいい。
494Trader@Live!:2014/01/28(火) 02:22:29.32 ID:URfBUqJj
MetaTrader 4の新しいバージョンがリリースされるのは、2月3日ぼ認識で合ってますか?
http://www.mql5.com/en/market/mt4
495Trader@Live!:2014/01/28(火) 03:35:08.21 ID:yNWtaHvV
MT4の注文価格、指値価格にライン表示させる設定って、どこですか?
496Trader@Live!:2014/01/28(火) 05:47:29.62 ID:k1ALpYoT
>>495
ツール→オプション→チャート
497Trader@Live!:2014/01/28(火) 09:01:46.77 ID:xJH7AECV
VPSでMT4使っている人いますか?
スマホでMT4チャート6枚程度見たいのですが、データ転送量
ってどんなくらいになるでしょうか?
1時間1MB程度でしょうか?
498Trader@Live!:2014/01/28(火) 12:00:46.03 ID:yQfbB2Xv
Androidタブレットは常に横画面になるけど、縦画面にする方法ってない?
499Trader@Live!:2014/01/28(火) 12:54:05.26 ID:AfUrDVnj
あ?
500Trader@Live!:2014/01/28(火) 13:14:55.98 ID:xzd96/qQ
ん?
501Trader@Live!:2014/01/28(火) 15:59:02.78 ID:/I3vSRp7
>>497
容量なんて測ってないが、10枚くらい余裕でやっとるよ。
2個起動しとるし。

数ヶ月やってるけど警告とかもなし
某所の500円vps
502Trader@Live!:2014/01/28(火) 18:59:27.41 ID:NIWH1VKF
>>501
リナックスにWine入れてやってるんですか?
503Trader@Live!:2014/01/28(火) 20:08:24.56 ID:/I3vSRp7
そそ
メール通知とトラリピで
504Trader@Live!:2014/01/29(水) 10:56:54.89 ID:wDnWbA/I
日本時間を表示したいので、テンプレにのってるファイル入れてみたんですが
JPN_Time_Subは入れてもどっかのブログとかにのってるような画像みたいに綺麗にならなくて
JPN_Time_Subzeroはそもそもファイル入れても認識してくれない
CIDP_JPY_Timeはググってもファイルがどこにあるか分からないのですが
ご教授お願いします
505Trader@Live!:2014/01/29(水) 11:47:07.20 ID:cFJL2Wvk
>>504
「JPN_Time_Sub」より、の改良版の「JPN_Time_SubZero」を使ったほうがいいよ。
表示の違いは区切り時間や、デフォだと表示項目が「時」のみだからじゃないかな。
設定値を調整するればいいよ。

ファイルが認識しないとは、どういったことかしらないが、
エラーが出てるならそれ見て対応して、mqlファイルが壊れてるなら別の所から拾ってくればいいんじゃない。

「CIDP_JPY_Time」は知らない。
506Trader@Live!:2014/01/29(水) 11:57:42.57 ID:qf6SVLkL
>>504
JPN_Time_SubZero の ex4 自体が生成されないのか?
サブウィンドウ内の表示が空っぽなのか?
(背景色とフォントの色が同じで見えないとか?)

詳しく書いてほしいな
507Trader@Live!:2014/01/29(水) 12:01:07.48 ID:wDnWbA/I
>>505
有難う、ZERO入れてみました
0 6 12  みたいな感じでしか時間が表示されないのですが

設定値の調整というのはどうやるのでしょうか?
お願い致します
508Trader@Live!:2014/01/29(水) 12:14:56.67 ID:qf6SVLkL
>>507
どんな通貨ペアの何分足のチャートでやってるの?
画面キャプチャ見てみたい
509Trader@Live!:2014/01/29(水) 12:39:33.49 ID:cFJL2Wvk
>>507
設定項目の最初にある「TimeInterval」が区切り時間で、デフォが12になってるはず。
1が1分を表すので、12だと12分ずつね。
これは短い足なら小さく、長い足なら大きく設定しとけばいいよ。
時間の表示は5個目から「YEAR」「MONTH」「DAY」「HOUR」T「Zero_H」「MINUTE」「SECOND」てあるのが、
年月日時分秒の表示を表すので、表示したい項目を「True」にしてやればいい。
そのほかにライン表示やフォントサイズなどの設定もあるね。

表示するチャートの時間足や表示倍率によっては、
細かくて見にくいときあるから、それは自分のお好みで調整ね。
※チャートのグリッド表示は消しておいたほうが見やすいよ。


デフォだとローカル時間を基準に描画してるから、
MT4を日本時間以外の端末で稼動させているなら、その設定をいじらないとだめだよ。
510Trader@Live!:2014/01/29(水) 13:03:13.26 ID:hRz5ALa5
因みにそのインジケータ作ってとお願いしたのはオレ
511Trader@Live!:2014/01/29(水) 14:44:02.16 ID:efxcGzFZ
>>504
http://d.hatena.ne.jp/fai_fx/20090905/1252076677
ここ見ればわかるんでね
512Trader@Live!:2014/01/29(水) 15:41:13.50 ID:wDnWbA/I
ありがと、mt4使い始めだけどシストレするEA作るから頑張るわ
爆益だすからみんなに車かってあげるね
513Trader@Live!:2014/01/29(水) 22:17:57.67 ID:tXbS7J9t
以下のようなものをつくりました。
自分の意図としては、Dが2番目のifで弾かれた場合(breakとなった場合)は、@に戻りたいのですが、
実際はCであったり、Cのforの上限に達しBに戻り・・・ といった動きをします。
これを、Dでbreakとなった場合@に戻る方法を教えてください。


for(〜) ・・・@
{
for(〜) ・・・A

 if(〜)
{
for(〜) ・・・B

  if(〜)
{
for(〜)  ・・・C

  if(〜){it(〜){(〜)}else{break;}} ・・・D
}
}
}
}
}
}
514Trader@Live!:2014/01/29(水) 22:33:30.53 ID:jhDEP2Sa
>>513
プログラムの構造化を考えた方がいいよ。
3段以上のネストは危険信号だと考えた方がいいと思う。
そのままなら、 goto 使うのが一番簡単だけど、関数化したほうがいい。
http://pastebin.com/8Hc60JNz
こんなん。
515Trader@Live!:2014/01/29(水) 22:38:26.80 ID:XVdSCWXD
MQLgoto文って無いんじゃなかったっけ。

breakは一番最近のループやSwitchを抜けるだけ。
1のfor文の直後に
bool Flag = false;
とかやって、5の2番目のifで1に戻したい状況になったらFlag = true;にしてからbreak、
234のループの頭にif(Flag)break;を入れとく、とかかな。

でもおれも正直構造見直した方がいいような気がするわ。
516Trader@Live!:2014/01/29(水) 22:39:23.90 ID:XS0r/Xhb
>>513
int flag = 0;
for(int i= 0;i<3;i++){
Print("i=",i);
for(int j= 0;j<3;j++){
Print("j=",j);
for(int k= 0;k<3;k++){
Print("k=",k);
if(k==1){ flag = 1;break;}
}
if(flag ==1 ) break;
}
flag = 0;
}
コレ参考に。
517Trader@Live!:2014/01/29(水) 22:39:50.90 ID:jhDEP2Sa
>>513
なんで break だとだめなのか、は break が最も内側のループや switch ブロックを抜けるためのものだから。
breakそのままだと、条件を保持する変数を作って
bool restart = false;
とかして、各 for の末尾で if (restart) break;
とかしてあげる方法もあるけど、それなら関数化して return で一気に抜けたほうがわかりやすい。
518Trader@Live!:2014/01/29(水) 22:41:17.26 ID:jhDEP2Sa
>>515
おお、すまない、goto無かった。
そして>>517の追加説明が派手に>>515-516とかぶってしまった。
すまないすまない。
519Trader@Live!:2014/01/29(水) 22:45:53.68 ID:wNShcoSY
{}
使い始めてもう1年以上になるけど、この波カッコ使ったことないわ
普通に使うもんなの?
520Trader@Live!:2014/01/29(水) 22:51:57.08 ID:jhDEP2Sa
>>519
全角って意味なら打ち間違えじゃない?
まさかと思ってコンパイルしたけど全角はコンパイルエラーになるし。
521Trader@Live!:2014/01/29(水) 22:54:31.25 ID:wNShcoSY
あ、完全に誤爆しましたw
すいません
522Trader@Live!:2014/01/29(水) 23:01:24.44 ID:5M5MiI94
pjdkf457

めちゃくちゃ弱い養殖雑魚少佐の癖にステゲーとかwww
どんだけクズなんだよ雑魚、なんで雑魚って何もできないゴミの癖にステゲーするのかね
523Trader@Live!:2014/01/29(水) 23:01:30.79 ID:pDB7vUv7
MT4で、韓国のドル/ウォンとウォン/円の
2つのチャートを見れるところはないですか?
524Trader@Live!:2014/01/29(水) 23:36:53.78 ID:XS0r/Xhb
>>523
韓国内のMT4業者探してみたら?
525Trader@Live!:2014/01/29(水) 23:36:54.13 ID:dJc8nRkp
http://forum.mql4.com/60075
次期リリースのMT4 build 574の変更点が大規模でやばい。
フォルダ構成も言語仕様もごっそり変わってる
526Trader@Live!:2014/01/29(水) 23:54:23.96 ID:bpv5w0p4
>>522
どこの誤爆だw
527Trader@Live!:2014/01/30(木) 00:08:21.95 ID:VmVhebku
>>525
キャッホー!MQL5が使えるようになる。

timezone jst { "JST" };
timezone ast { "AST" };
calendar cal1 { "2014-01-05T10:34Z", ast };
calendar cal2 { "2014-01-07T11:30+09:00", jst };
datetime sec = cal2 - cal1;
こんな感じで使える時間ライブラリ書こうと思ってる。
528Trader@Live!:2014/01/30(木) 00:26:50.25 ID:Eoofugfz
なんか凄いことになってるな.
MQL5は諦めて、MQL4の近代化改修か。
529Trader@Live!:2014/01/30(木) 03:13:06.77 ID:hS8o53+c
>>513
breakじゃなくてcontinueでおk
530Trader@Live!:2014/01/30(木) 03:14:40.15 ID:hS8o53+c
ごめん、うそw
531Trader@Live!:2014/01/30(木) 15:41:10.47 ID:rp8mwUIK
詳しい方至急お願いします


アルパリNZのデモサーバーでMT4を使用していますが
昨日のFOMC発表以降にユーロ円で一時的に107円や10円といった異常値をつけました。

以下の画像はユーロ円の日足のチャートです

http://uploda.cc/img/img52e9ee020085f.png


安値が10円台を付けているため正常なチャート表示が不可能になりました。
なにか復旧させる方法はありますか??



ちなみに異常値がでてるのはユーロ円のみです。
532Trader@Live!:2014/01/30(木) 15:56:51.03 ID:tfjENFNW
>>531
ヒストリカルデータから当該データを削除してもよいが、
サーバ側で訂正されない限り直ぐに戻るでしょう。


F8押して、プロパティの全般からスケールの固定でしのぐしか無いと思う。
533Trader@Live!:2014/01/30(木) 16:30:00.18 ID:91hgd6z/
サーバの配信データがおかしいままなら、Alpariに問い合わせたほうがよいのではないかと。
534Trader@Live!:2014/01/30(木) 16:37:54.98 ID:91hgd6z/
dc1.mt4ecn.alpari.co.nz:443 で demo アカウント作って、
EURJPYの日足チャート出してみたけど異常なとこなさそーだから、>>532の言うようにヒストリ消して、更新すれば直る気がする
535Trader@Live!:2014/01/30(木) 18:45:37.16 ID:aHtMTlW4
>>531
私も同じ症状になりました…ユロ円のみです
536Trader@Live!:2014/01/30(木) 18:49:10.68 ID:aHtMTlW4
今ヒストリー消したら直りました。
537Trader@Live!:2014/01/30(木) 18:51:24.51 ID:aHtMTlW4
と思いきやヒストリー消した時間足しか直りません
私は日足チャート使うので、この日足1日分消さないと駄目なのでしょうか・・・
538Trader@Live!:2014/01/30(木) 19:00:51.58 ID:tfjENFNW
消さずに書き換えればいいんじゃね
539Trader@Live!:2014/01/30(木) 19:01:45.19 ID:tfjENFNW
サーバ側で訂正されているなら、
一度 MT4終了して、 hstファイル消してから起動するだけでもいいような
540Trader@Live!:2014/01/30(木) 19:05:39.66 ID:aHtMTlW4
なんどもすいません。ヒストリーで自分で安値を編集したら直りました。みなさんありがとうございました。
541531です:2014/01/30(木) 20:15:19.85 ID:rp8mwUIK
1分足から月足まで異常値の個所をすべて手作業にて修正しました。
現在は正常に動いております。

みなさん、ありがとうございました。



今からもう2台目のPCの修正作業にかかります・・・ orz
542531です:2014/01/30(木) 20:37:16.39 ID:rp8mwUIK
直った―!!と思ってMT4を再起動したら4時間より長い足で異常値の表示に逆戻りになりました・・・


みなさん 妙案あったらよろしくお願いします。



似たような症状で直ったって言ってた方ももう一度確認されたほうがよいかと・・・
543Trader@Live!:2014/01/30(木) 20:51:27.96 ID:91hgd6z/
>>539
はやってみた?
544Trader@Live!:2014/01/30(木) 21:03:31.91 ID:rp8mwUIK
やってみましたが特に変化無しです
545Trader@Live!:2014/01/30(木) 21:06:26.95 ID:O/1q5fqf
サーバー側が直ってないなら何しても無駄
546Trader@Live!:2014/01/30(木) 23:05:15.61 ID:YZKcpjwx
ま、デモなんだから我慢するしかないね
547Trader@Live!:2014/01/30(木) 23:16:09.88 ID:zbW5wYPc
うん、シストレがストップをはるかに通り越して107円で損切りさせられててワロタ
548Trader@Live!:2014/01/30(木) 23:35:35.56 ID:VmVhebku
デモでなくても時々起きる。
クソポジ抱えて見ない振りしてると、唐突に口座残高がゼロになってて
気絶しそうになった奴は数知れずw
549Trader@Live!:2014/01/31(金) 00:29:23.21 ID:meSm3fZ5
その話こわいんだけど。
それ保障してくれるわけ?
550531です:2014/01/31(金) 02:04:12.78 ID:15/jNTRo
いまMT4起動したら普通に直っていました。
サーバー側で修正したようです。こちら側ではとくに何もしていません。
お騒がせしました。


一つ質問なのですが、これが仮にライブアカウントで同じことが起きたとして
昨日のユーロ円でいきなり10円とかになった場合買い注文入れたら通るものなんでしょうか??


イメージ的にはジェイコム株の誤発注騒動みたいに短期でぼろもうけw  みたいな・・・




やっぱり注文はじかれるんですかね??
551だるまたんJP_FromTheBarrel ◆damaru5/aw :2014/01/31(金) 03:05:57.74 ID:9WDb8onw
デモ鯖ではログを取得しきれなてない時に良くあるゆ^^
リア口座では見たことにゃい
552Trader@Live!:2014/01/31(金) 12:03:57.32 ID:5h3I5nAA
全くのスレ違いだけど、他に適当なスレも見当たらないので、知っている人いたら教えて。
ツールはtradeinterceptor。
チャートの左上のある注文画面って、どうすれば消せる?
あと、直近のローソク足(Last Bar)の枠色を変えたいんだけど、どこで設定すればいい?
553Trader@Live!:2014/01/31(金) 15:17:29.92 ID:4w9wYdPj
>>552
注文画面は、右上のView切り替えで消せたよ。
直近だけローソク足の色を変えることはできないんじゃないかな。
554Trader@Live!:2014/01/31(金) 17:38:27.19 ID:5h3I5nAA
>>553
ありがとう。
でも、もうちょっと詳しくお願いします。
メニューバーの「view」?
ひと通り試してみたけど消せなかった。
他のところ言ってるんでしょうか?
555Trader@Live!:2014/01/31(金) 18:41:56.82 ID:4w9wYdPj
>>554
おお、Mac版とWindows(Java)版でこんなにもUIが違うものだと思ってなかった。
Windows版だと、Options -> General Preferences -> General -> Show quotes をオフで消えた。
チャートの足の色は、 Options -> Color Preferences -> Last bar - negative, Last bar - positive だね。
556Trader@Live!:2014/01/31(金) 18:54:49.05 ID:4w9wYdPj
ちなみに、TradeInterceptorを初めて使って5分ぐらいで >>555 を探し当てられたから、
もう少しがんばって探せるようになることをおぬぬめするw
557Trader@Live!:2014/01/31(金) 19:02:57.52 ID:5h3I5nAA
できました!サンクスです。

チャート足の色設定はそこで何とかしようとしているのですが、
ローソク足の本体の色は変えられても枠色は変えられないような…
558Trader@Live!:2014/01/31(金) 19:14:50.69 ID:4w9wYdPj
少なくとも最新版5.5.2では足の枠の色なんてないみたいだぞ。
TradeInterceptor自体が古かったりしない?バグかもしれないよ。
559Trader@Live!:2014/01/31(金) 22:06:56.62 ID:tfFSCpIQ
ゴミカスOS使ってる人はいろいろ大変ですねw
560Trader@Live!:2014/02/01(土) 06:24:05.00 ID:nHsWwpjf
バーのHighの位置に矢印を表示したのですが、矢印がバーにめり込んでしまいます。
矢印の位置を指定ピクセルだけ上にずらしたいのですがどうしたらいいのでしょうか。
561Trader@Live!:2014/02/01(土) 07:29:02.46 ID:b9TEwafp
>>560
ObjectCreate の price1 引数をよしなに調整するとよろし。
562Trader@Live!:2014/02/01(土) 10:19:39.93 ID:Koocexgp
国内業者だと、どこがお勧めですか?
563Trader@Live!:2014/02/01(土) 17:09:57.81 ID:nHsWwpjf
>>561
やはりそれしかないですか。
それだと通貨ペアやチャート内の最低/最高値によって価格とピクセルを変換する必要が出てくるので
何か方法があるのでは、と思ったんですよね。
素直に関数書くか・・・
564Trader@Live!:2014/02/01(土) 17:13:45.41 ID:hrXYHnQZ
Object使わずにバッファで描けば少しましかも。
まぁどっちもどっちではあるけど。
565Trader@Live!:2014/02/01(土) 19:39:23.99 ID:cjf135MT
>>563
Priceだとチャートでピクセルがずれるのが気にくわないってこと?
MarketInfo(Symbol(), MODE_HIGH) + 0.01 とかではだめで。
そこまで厳密にしたいなら、
http://codebase.mql4.com/5984
を使ってピクセル高さを出して、
(WindowPriceMax() - WindowPriceMin()) を割って、prices/pixel 出して、
欲しいピクセルに対応するPriceを返す関数作った方がいいね。
566Trader@Live!:2014/02/01(土) 20:22:39.20 ID:zQwBEift
window8.1 タブレット Miix 2 8で使うとタッチで右クリックが出来なかった
他のwindowタブで使ってる人は出来てるのかな
567Trader@Live!:2014/02/01(土) 20:22:49.54 ID:nHsWwpjf
>>565
このファンクションのおかげで簡単に実現できました。
ありがとうございます。
568Trader@Live!:2014/02/02(日) 01:43:53.76 ID:p6rHrT/4
>>565
これGetPixel使ってるからクソ重い。
bitbltだと工夫なしでベタに使っても20倍ほど速くなる。
569Trader@Live!:2014/02/02(日) 03:00:34.22 ID:upkJi/tS
>>568
WindowPriceMax() - WindowPriceMin() が変化したときだけ再計算でも十分なんじゃないかと
570Trader@Live!:2014/02/02(日) 15:24:00.45 ID:wX0ksnJN
レンタルサーバーってどこつかったらよいですか?
571Trader@Live!:2014/02/02(日) 16:18:25.20 ID:gdwXp4a0
500円くらいので十分
572Trader@Live!:2014/02/03(月) 12:46:02.24 ID:2S0yq7qI
----------100.500円
----------100.000円
-----------95.500円

こういう風に切りのいい50銭区切りで横線が引ける物はありますか。

さらに、色分けや太さが変えられるものがあれば教えて頂きたいです。
573Trader@Live!:2014/02/03(月) 15:28:21.19 ID:dYF+ONxH
GridBuilderってインジがあるわ
色や太さはMetaEditorでソース書き換えればできるよ
574Trader@Live!:2014/02/03(月) 18:38:11.96 ID:J967nKtB
プログラム上級者に聞きたいんですが
以前に自分が書いたコードを見て意味が分からなくなることありませんか?
こういうことが頻繁にあります・・・コメントアウトがヘタクソなのかな

いまいち上達している感がないです
何か巧くなるコツみたいなのないでしょうか?
575Trader@Live!:2014/02/03(月) 18:50:18.56 ID:YWUe5xnL
>>574
リーダブルコード という本を読むと良いよ。
このスレでもらえるアドバイスのほとんどは書いてあるはず。
576Trader@Live!:2014/02/03(月) 18:53:42.66 ID:YWUe5xnL
>>574
それ以前に自分の書いたEAなりインジをアップロードすれば
より具体的なアドバイスがもらえるかもしれん
577Trader@Live!:2014/02/03(月) 19:31:41.32 ID:J967nKtB
サンクスです
今ここでさらに抽象的なことを学ぶような本を読んでもさらに混乱してしまうだけかも・・・
圧倒的に経験が不足しているのかもしれません
578Trader@Live!:2014/02/03(月) 19:43:04.68 ID:YWUe5xnL
>>577
じゃあ、リーダブルコードを参考に簡略化したこちらの資料をどうぞ。
http://www.fos.kuis.kyoto-u.ac.jp/~umatani/le3b/mini2_1.pdf
579Trader@Live!:2014/02/03(月) 19:56:41.61 ID:AePZq04t
スマホ向けメタトレーダーは今のところオリジナルインジケーターの表示ができませんが
将来的にできるようになるんでしょうか?

それとも望み薄と考えたほうがいいんでしょうか?

出先でオリジナルなインジを適用させたチャートを見る方法ないですかね^^;
リモートで見るというぐらいしか思いつきませんでした
580Trader@Live!:2014/02/03(月) 20:02:45.88 ID:kL8liXQ5
ソースコードをキレイに書くってのはある意味プログラマの永遠の課題(正解はない)のだけど、
EAやインジケータは、そもそも他の言語に比べたらオープンなのが少ないし、
そういう心がけを持って作られたモノもたぶん他のに比べたら少ないだろうから、
参考になるコードが少ないっていう問題はあるかもしれないなと思った。

そういう点を鑑みると、>>576 の言うようにレビュー形式が一番いいのかもしれない
(レビューアによってばらばらのコメントが付くことも予想されるので、いちがいに良いとは言えないけどね・・・)

公開したくない部分は削除した状態でもどっかにアップしてレビュー求めてもいいかもね。
581Trader@Live!:2014/02/03(月) 20:03:47.05 ID:Kic8SEGi
>>574
日本語で変数名つけるとか。
582Trader@Live!:2014/02/03(月) 23:49:03.32 ID:aBo47U6Q
MT4を起動させたときだけ表示が変になるインディケーターがあるんですが
何が原因なんでしょうか?
プログラムのロードに失敗してるんでしょうか
時間軸を切り替えたりすると正常な表示に戻ります
583Trader@Live!:2014/02/04(火) 00:24:09.07 ID:BVGhIEry
コードてどこへうpすればいいんすか?
584Trader@Live!:2014/02/04(火) 01:29:35.22 ID:leaCl8GO
>>583
http://www.sourcepod.com/
http://ideone.com/
どっちかにしてくれ。

テンプレのうpローダーはもういいだろう。
DLしてエディタで開いてって面倒くさいから
答える答えないの前に見てみる気がしない。
585Trader@Live!:2014/02/04(火) 01:59:30.24 ID:sBgsGbXk
http://pastebin.com/ もいいよ。
> DLしてエディタで開いてって面倒くさいから
> 答える答えないの前に見てみる気がしない。
は激しく同意
586Trader@Live!:2014/02/04(火) 02:30:34.81 ID:sBgsGbXk
GitHubに登録してもいいなら、Gistもあり。
GistならGit使えなくても使えて、更新差分も見れるので、レビュー用途にはいいかも。
例: https://gist.github.com/micclly/8788171/revisions
# 拡張子を.cにしてあげないとCのハイライトが適用できないのに注意。
587Trader@Live!:2014/02/04(火) 09:16:09.35 ID:chJ5QE3D
Vantage FXのMT4仕様変更の結果、EAがNavivatorから消されてしまった。
MetaEditorからCustom Indicatorsも消えた。どうすれば良い?
588Trader@Live!:2014/02/04(火) 09:21:17.02 ID:WgvIzvSK
>>587
MT4のbuild が600になったとかですか?
589Trader@Live!:2014/02/04(火) 09:24:16.04 ID:lBiB2Xvh
おはようございます。
質問です
国内海外問わずMT4で一番朝一で動く業者はどこになるでしょうか?
590Trader@Live!:2014/02/04(火) 09:25:45.78 ID:WgvIzvSK
>>589
ニュージランド辺りじゃない?
時差的に。
591Trader@Live!:2014/02/04(火) 09:42:34.71 ID:chJ5QE3D
>>587,588
通常のbuild更新ではないようだ。ユーザーアカウント制御にOKを出すと
この状況になる。他のFX会社でも同じようにユーザーアカウントのチェック
が入るが、同じようになるのが怖いので「いいえ」にして元のbuild 509のまま
使っている。確かにbuild 600になっているね。
592Trader@Live!:2014/02/04(火) 09:44:53.44 ID:chJ5QE3D
591だが、PCはWindows 8です。
593Trader@Live!:2014/02/04(火) 09:46:12.92 ID:WgvIzvSK
http://forum.mql4.com/60075

Build 574 以降のMT4は、MQL4言語やフォルダ仕様がごっそり変わったんだよ。

/portable って引数つければ、従来仕様で起動するらしいが。
594Trader@Live!:2014/02/04(火) 10:05:30.60 ID:chJ5QE3D
>>593
ありがとう。
今読んでいるが、もう一つよくわからない。Program Files(86)にも
新しく作らられたVirtual Store→Program Files(86)の中にもAdvosors
のファイルがない。標準搭載のEAやIndicatorsはどこに保存されているの?
595Trader@Live!:2014/02/04(火) 10:08:35.88 ID:lBiB2Xvh
>>590
ごめんなさい言葉が足りなかったですね
月曜の朝一ですね動くという意味はすいません
大体どこの業者も7時ですよね
6時とか5時に動くMT4は無いんですかね
国内だったらサクソとかありますが
MT4は無いのかな・・。
596Trader@Live!:2014/02/04(火) 10:12:29.90 ID:sBgsGbXk
build600は正式版だよ
http://forum.mql4.com/60555
597Trader@Live!:2014/02/04(火) 10:14:21.16 ID:sBgsGbXk
>>594
%APPDATA%\MetaQuotes\Terminal\<ID>\MQL4 の中に入ってる。
<ID>は自動生成される文字列なので、
該当のフォルダに入るのは、MetaEditorのフォルダツリーで右クリックして「Open folder」するのがいい。
598Trader@Live!:2014/02/04(火) 11:12:10.79 ID:chJ5QE3D
>>597
大変助かりました。
ところがMetaEditorがうまく機能しません。MEを開いても少し経つと(20秒くらい)
閉じてしまいます。これはWindows 8でもVistaでも起こる不都合です。

現在はあまり使わない口座で試験的にBuild 600への更新におうじていますが、
どうやらいまだ不安定なので、運用口座でしばらくは509のままにしておきます。
599Trader@Live!:2014/02/04(火) 16:20:57.46 ID:ZtuNsGLR
metaeditorで2バイト文字使うとカーソル位置がおかしな事になるな
600Trader@Live!:2014/02/04(火) 16:32:40.70 ID:ZtuNsGLR
カーソル位置だけじゃなくて表示も重なるな
あとアンインストールしようとしても「アンインストールするのに必要なアクセス権がありません」ってダイアログが出て弾かれる
Adminでログオンしても弾かれる
601おかみ:2014/02/04(火) 16:50:35.07 ID:dris/VM1
おわた
602Trader@Live!:2014/02/04(火) 17:08:50.84 ID:8iFLsEHm
何が?
603おかみ:2014/02/04(火) 17:09:33.81 ID:dris/VM1
CPU制限が無い509が手に入れられるのはサイバーしかないから保存して置いた方がいいだかよ・・・
問題は509がいつまで期限があるかで人生の分かれ目になるだかよ・・・

http://www.cyberagentfx.jp/mt4/download/cyberagentfxmt4.exe
604Trader@Live!:2014/02/04(火) 18:37:12.97 ID:MOUufeid
どれくらい需要あるのかわからんけど、
ローカルに置いてあったbuild509バイナリをあげておいた。
https://github.com/micclly/mt4-archive

MetaQuotesのデジタル署名が入ってるので改ざんはもちろんできないけど、自己責任で。
605Trader@Live!:2014/02/04(火) 19:44:44.00 ID:MOUufeid
>>600
カーソルはレポっておいた(ベータのときにすでにされてる気もするけど、スレッドが長すぎるので確認はしていない)。
606Trader@Live!:2014/02/04(火) 21:08:16.68 ID:BU9UqegU
同じ期間のバックテストとリアルトレードとを比較すると、
ほぼ毎回バックテストの方が有利な価格で取引しています。

たとえばリアルトレードでは
2014.02.04 09:23 buy usdjpy 100.988
バックテストでは
2014.02.04 09:23 buy usdjpy 100.976

業者が提示しているスプレッドは1pip前後で安定しています。
バックテストのスプレッドは2を指定しています。

以上のように、
安定して、全期間にわたって、バックテストの方が有利な価格で取引してしまう要因は何がありますか。
モデルは全ティック、業者はアルパリジャパンです。
EAは足が完成したときにしか取引しません。
607Trader@Live!:2014/02/04(火) 21:09:53.21 ID:WgvIzvSK
>>606
スリッページとか
608Trader@Live!:2014/02/04(火) 21:27:31.23 ID:leaCl8GO
新バージョンのMT4(600)はなんか重いというか、ちょくちょくUIが固まるな。

MQL5(MQL4++?w)は普通にコピーコンストラクタがちゃんと働くな。
無駄初期化無視か、暗黙的シャローコピーの俺様仕様かと思ってたら
意外とちゃんとしてたw

でも、hoge const& test;はなぜかエラーになる。
const hoge& test; const hoge* test; hoge* const test;しか許容
しないらしい。
609Trader@Live!:2014/02/04(火) 21:32:55.27 ID:BU9UqegU
>>907
ありがとうございます。

OrderSendのスリッページの引数には1を渡しているので、
>>606の例のように10(しかもほぼ毎回)滑ることは
スリッページだけでは説明できなさそうだと思っています。

24時間MT4でEAを動かしているので実際のレートとヒストリーが異なっていることもないでしょうし。。。
610Trader@Live!:2014/02/04(火) 21:40:38.85 ID:WgvIzvSK
>>609
あるパリってカウントダウン方式じゃなかったですん?
611Trader@Live!:2014/02/04(火) 21:50:17.50 ID:ONdE/yBd
metalang.exeはmql.exeに名前が変わったんか。
直接起動するとconst hoge &amp;とか通らないんだけど、何か引数いるのかな...
いまいちわけのわからんエラーが出た。

class hoge {} h;
hoge &amp;test(h);

error 229: '&amp;' - reference cannot used
error 199: 'hoge' - wrong parameters count
612Trader@Live!:2014/02/04(火) 21:54:50.19 ID:leaCl8GO
>>611
class hoge
{
public:
hoge() { printf("%s", "im default constructor"); };
hoge(const hoge& obj) { printf("%s", "im copy constructor"); };
};

int init()
{
hoge h1;
hoge h2 = h1;
return (0);
}
613Trader@Live!:2014/02/04(火) 21:57:59.35 ID:ONdE/yBd
ん?どゆこと?
参照がおかしいって話なんだけど...
って、コピーコンストラクタの引数の話だったかそれは。
普通に変数宣言で const hoge &test(x); とかでエラーになるんだけど..
614Trader@Live!:2014/02/04(火) 21:58:03.33 ID:1IZPtK5t
build600は人柱になった方がいいか?
615Trader@Live!:2014/02/04(火) 22:07:31.09 ID:ONdE/yBd
build600、なんかオブジェクトの奥行判定の方法が変わったのかな。
名前でソートされてたのがおかしくなってる。
616Trader@Live!:2014/02/04(火) 22:10:59.93 ID:leaCl8GO
>>613
書いたコードの全文を見せてもらえればこっちでも確認してみるけど・・・・・・
617Trader@Live!:2014/02/04(火) 22:16:35.05 ID:ONdE/yBd
いや、単にその2行だけなんだけど..
まぁバケてたからもう一度。
class hoge {} h;
hoge &test(h);
C++だとhogeクラスの変数hとその参照testの宣言だよね。
もう何年も書いてないからちょっと心許ないんだけどw
618Trader@Live!:2014/02/04(火) 22:17:32.13 ID:ONdE/yBd
まさか仮引数以外で参照変数は使えないとかいうオチがあったりするのかな。
619Trader@Live!:2014/02/04(火) 22:31:06.15 ID:MOUufeid
>>617
&が全角で引っかかりましたけど、さすがにそれは打ち間違いかな。
&は参照渡しでしか使えないので、それでエラーになってる。
http://pastebin.com/cJn0kJkM
通るようにした
620Trader@Live!:2014/02/04(火) 22:33:55.09 ID:ONdE/yBd
やっぱり>>618ってことか....ちょっと衝撃。
(ampersandは半角での書き方忘れたから全角で入れただけ)
621Trader@Live!:2014/02/04(火) 22:36:44.11 ID:leaCl8GO
>>618
どうもそのオチらしい。

てか、↓が通らん。
hoge& hoge::operator=(const hoge& o) { return (*this); };
↓のようにすれば通るが、無駄に一時オブジェクトが生成されて無為に捨てられる。
hoge hoge::operator=(const hoge& o) { return (this); };
622Trader@Live!:2014/02/04(火) 22:45:42.28 ID:ONdE/yBd
>>621
それだと意味が変わってくるから使えないようにした方がよくないか。
(a = b).c = d;とか。
て、これは正しい式か?w
623Trader@Live!:2014/02/04(火) 23:01:20.14 ID:0D0AzcnL
VTにダブルストキャスってインジがあるんですが、MT4にあるでしょうか?
624Trader@Live!:2014/02/04(火) 23:01:34.31 ID:MOUufeid
MQL5のだけどReferencesの項を貼っておく
http://www.mql5.com/en/docs/basis/types/this
Passing Parameters しか書いてないね、やっぱり
625Trader@Live!:2014/02/04(火) 23:07:44.80 ID:ONdE/yBd
>>624
それ、build600でも同じ仕様なのかな。
なんか、thisはポインタじゃないとか関数はオブジェクトを返せないとか
すごいことが書いてあるけどw
626Trader@Live!:2014/02/04(火) 23:19:18.63 ID:MOUufeid
そもそもポインタはポインタではないらしい。
http://www.mql5.com/en/docs/basis/types/object_pointers

DLLにポインタ渡す場合、MQL4では全部int型扱いで渡してたけど、
new MQL5 だと、class object だったら *object って渡さないとダメなのかな?気持ち悪いなあw
627Trader@Live!:2014/02/04(火) 23:22:04.48 ID:MOUufeid
ごめん、class objectは普通渡さないか、外部ライブラリに。
structのポインタだね、あるとすると。(*hoge の形式で渡さないとすればやっぱり気持ち悪いけど)
628Trader@Live!:2014/02/04(火) 23:34:45.47 ID:MOUufeid
>>623
標準ではついてない
http://codebase.mql4.com/4075
にはある
629Trader@Live!:2014/02/05(水) 00:21:17.53 ID:okh9XlrF
なんでこんなに苦労してC++と似ているようで違う言語をつくろうとしているのか理解できん。
630Trader@Live!:2014/02/05(水) 00:24:19.47 ID:/ZNigK6m
仕様変更よりもマルチスレッド対応にして欲しい..
631Trader@Live!:2014/02/05(水) 00:30:40.01 ID:DJYgO8mw
やってみたら、 struct には new ができなくて、struct のポインタは作れなかった。
Cのポインタとして構造体を受けるためには、MQL4側は参照として渡すことでいけた。

仮引数にstruct型を含めるとき、参照形式以外だと
「'SampleData' - objects are passed by reference only」
とか怒られるから、そもそもstructは参照形式以外で渡せない仕様の模様。
classはそうではない(Include/Arrays/List.mqhとか見ると分かる)。
不思議がいっぱい!
632Trader@Live!:2014/02/05(水) 00:34:08.93 ID:DJYgO8mw
> 仮引数にstruct型を含めるとき、参照形式以外だと
>「'SampleData' - objects are passed by reference only」
> とか怒られる

pure MQL な関数でも、ね。
633Trader@Live!:2014/02/05(水) 00:36:10.77 ID:DJYgO8mw
今後、「新しいMQL4はC++がベースになってますからC++から勉強するのもいいですよ」とか
言い出す人が出てきそうだけど、それは全力で止めたほうがいいw
634Trader@Live!:2014/02/05(水) 00:36:37.58 ID:J2vYtikm
様子見ですかね。
特にDLLへの引数の渡し方で、不具合でているなら
しばらく、変えないつもり。

いままで、mqlのstart()に殆どのDLLの関数達を実行していたけど。
DLL側にmain()みたいなものを作って、DLLでできることはDLL内で実行するのもあり。
635Trader@Live!:2014/02/05(水) 00:40:31.54 ID:DJYgO8mw
DLLを使ってるインジケータ、EAはまるっと作り直しになると思われる。
forum見てると「ShellExecuteAが正常に動かない!」→「ShellExecuteW使えよ」とか回答ついてる。
.hstファイルのフォーマットも変わってるから、チャートまわりのツールも躓くんじゃないかな。
636Trader@Live!:2014/02/05(水) 00:43:57.16 ID:IYWHVAjq
>>632
> pure MQL な関数でも、ね。
どういう意味?
637Trader@Live!:2014/02/05(水) 00:46:47.34 ID:DJYgO8mw
>>636
ごめん、 >>626-627 からの流れで書いたんだ。
struct は参照形式でしか渡せないのは、別にDLLは関係ないよ、ということを補足した。
638Trader@Live!:2014/02/05(水) 00:51:44.82 ID:IYWHVAjq
C++ならアリだけど、まぁそれはおいといて、
それはstructの参照を仮引数にすればDLLともやりとりできるってこと?
#import "xxx.dll"
void f(struct &s);
#import
でDLLとやりとりできる?
classでもいけるんかな。
639Trader@Live!:2014/02/05(水) 00:59:39.19 ID:W3uei4ZY
逆にMQL55とどう違うんですか?
640Trader@Live!:2014/02/05(水) 01:23:58.56 ID:DJYgO8mw
>>638
DLLにstructを渡せる。classは渡せない。
structは、相手がポインタ受けでも参照受けでも、MQL側を参照渡しで渡せる。
いままでint配列で渡していたものは、すごくすっきり欠けるようになった。
https://github.com/micclly/mt4-libraries/tree/master/SampleDLL1
に実験したソースを置いておいたので、必要だったら見てくり。
641Trader@Live!:2014/02/05(水) 01:57:51.06 ID:dRrR9mAj
http://pastebin.com/b1NqkdLp

const test& test::operator=(const test& o) { return (*this); };

const test* test::operator=(const test& o) { return (GetPointer(this)); };
で、代替できてるように見えるけど、なんか地雷踏んでたりするかな?
642Trader@Live!:2014/02/05(水) 02:20:09.38 ID:DJYgO8mw
乙です
> printf("construct test: t3 = t2");
> test t3 = t2;
>
> printf("t1 = t2 = t3");
> t1 = t2 = t3;

戻り値ポインタ型のoperatorがこの式で発動するのは気持ち悪いと感じるけど、
そういうもんだと飲み込みさえすれば、問題ないのかな?という気がする
643Trader@Live!:2014/02/05(水) 02:27:39.89 ID:DJYgO8mw
連投すまぬ
>>642 の引用文上2行は間違った。
644Trader@Live!:2014/02/05(水) 02:33:00.84 ID:IYWHVAjq
なんだこれ、今までのソースコンパイルしたらエラーでまくりwww
やってられんw 509でいけるとこまでいくか...
645Trader@Live!:2014/02/05(水) 02:40:36.20 ID:DJYgO8mw
Include\WinUser32.mqh 見ると
int SetWindowTextA(int hWnd,char &lpString[]);
int SetWindowTextW(int hWnd,string lpString);
int GetWindowTextA(int hWnd,char &lpString[],int nMaxCount);
int GetWindowTextW(int hWnd,string lpString,int nMaxCount);
ってなってる。
*A系のAPIそのまま使いたいなら char 配列にしないといけなくて、
stringそのままでいきたいなら*Wを呼び出すように修正しないと、DLLを使ったソースはコンパイルが通らないと思われ。
646Trader@Live!:2014/02/05(水) 02:48:01.77 ID:dRrR9mAj
>>642
*, this, GetPointer辺りの挙動が手探りでまだ理屈になってないから、かなりモヤモヤする。
暫く様子を見ないといきなり本番はこえーなorz

>>644
グローバル変数を$hogeとかしてた(テキストエディタでカラーハイライト設定するとグローバル
変数が一目瞭然で便利だった)俺は再コンパイルが全部通らんw
647Trader@Live!:2014/02/05(水) 02:49:26.11 ID:IYWHVAjq
>>645
UTF16になったんだろうから全部W使わないといかんのでは。

>>646
おれのはとりあえず#includeで改行がunix形式とdos形式が混じってたのが
悪かったみたいだ。
648Trader@Live!:2014/02/05(水) 02:53:15.11 ID:DJYgO8mw
>>647
そだ、中身がUTF-16だからA系は使えませんな・・・。
どうしてもA系使おうとしたらWideCharToMultiByte使わないとだめだろうけど、
そこまでしてA系を使うメリットは思い浮かばないですな。
DLLのソースがなくて、W系を提供してない場合ぐらいか。
649Trader@Live!:2014/02/05(水) 04:32:45.57 ID:rUDC8fS4
誰か真面目にMT4使いの人助けてもらえませんでしょうか?本当に困っています
機械音痴で調べるだけ調べました結果自分では解決せず質問しに来ました
簡単に言います、コンピューターからプログラムファイルx86に行き
自分の取引してる業者MT4に行きました、ここまでは言いのですが
肝心のエキスパーツの欄がありません、その原因はおそらく
わたくしが前日にその中にある色々な邪魔だと思う物を削除しまくったのが
原因だと思います、もしそうではなければパソコンが原因なんでしょうか?
パソコンが原因ではなく違う原因があるなら
素人考えで申し訳ありませんがMT4の中身を復活させることは可能なんでしょうか?

〔自分なりにやることをやったこと〕
MT4をアンインストールしても駄目
パソコン本体も出荷時状態にして改めてMTをインストールしても駄目でした。
とにかくエキスパーツの欄が見当たらなくなりました

言葉足らずで本当にすいません。
650かっちゃん:2014/02/05(水) 04:34:08.24 ID:iSu0FB/f
>>649

頑張ってください。
651Trader@Live!:2014/02/05(水) 04:44:32.29 ID:rUDC8fS4
頑張りますありがとうこざいます
もう一台のちゃんと稼動してるMT4の中身をコピーして
それを原因のあるパソコンにMT4のコピーを貼り付けることは駄目なんでしょうかね?本当素人考えで申し訳ないですお恥ずかしい

出荷時にして駄目だからエキスパーツの部分だけ破損でもしたのかな・・・困り
652Trader@Live!:2014/02/05(水) 05:32:55.24 ID:GVh99WaU
MEを使っていて、和文(全角)で注釈行を書こうとするとなんだかとても使いづらいです。
何とかなりませんでしょうか。
どなたかよろしくお願いします。
653Trader@Live!:2014/02/05(水) 05:40:34.17 ID:5P1R9xBe
build600を使ってるならバグなのでいまのとこどうしようもない。
ほかのテキストエディタでコーディングするのが得策。
もしくは諦めてコメントも英語なりローマ字なりで書く。
654Trader@Live!:2014/02/05(水) 05:45:48.46 ID:GVh99WaU
次いでで申し訳ありませんがもう一つ(2つ)ご教示いただければありがたいです。
エントリーを起点としての現在のBarの本数、決済を起点としての現在のBarの本数、
を知りたいのですが、なにかスマートな方法がありましたらよろしくお願いします。
655Trader@Live!:2014/02/05(水) 05:50:01.71 ID:5P1R9xBe
ポジションが一個なら、
int g_entriedBars, g_closedBars;
のようなグローバル変数用意しておいてエントリ時、決済時のBarsを保存する
656Trader@Live!:2014/02/05(水) 05:54:04.39 ID:GVh99WaU
>>653
早速のコメントありがとうございます。
build509を使っています。
そうなんですか。分かりました。
和文のほうがパッと見て分かるので、なるべく和文でと思ったのですが。
注釈行のことを考えると気が重いです。
657Trader@Live!:2014/02/05(水) 05:56:55.91 ID:5P1R9xBe
509なら、オプションからフォントをMSゴシック、言語を日本語にしてみよう。
658Trader@Live!:2014/02/05(水) 05:59:26.89 ID:GVh99WaU
>>655
またまた早速のコメント感謝です。
初心者の質問で申し訳ありませんが、
「エントリ時、決済時のBars」の何を保存すればよろしいでしょうか
659Trader@Live!:2014/02/05(水) 06:02:32.55 ID:pPtado2W
>>649
Windows7は面倒くさいんですよ
http://ameblo.jp/iwatame/entry-11130141056.html

なので自分はC:\Program Files(x86)にインストールしないで
C:\にMT4とかの名前のフォルダを作ってC:\MT4にインストールしてます
660Trader@Live!:2014/02/05(水) 06:06:22.29 ID:5P1R9xBe
OrderSell/OrderBuyのとき:
g_entriedBars = Bars;

OrderCloseのとき:
g_closedBars = Bars;

をした上で、

エントリ起点のBars:
Int barsFromEntried = Bars - g_entriedBars;

決済起点のBars:
Int barsFromClosed = Bars - g_closedBars;
661Trader@Live!:2014/02/05(水) 06:08:13.20 ID:5P1R9xBe
関数名間違った。
OrderSell/OrderBuyのとき、は
OrderSendのとき、の間違い。
662Trader@Live!:2014/02/05(水) 06:33:01.29 ID:GVh99WaU
コメントありがとうございます。
>>657
フォントがHG明朝Eだったので、MSゴシックに変えてみましたが、変化ありませんでした。

>>660,661
私の理解では、Barsはチャートに表示されるバーの本数なので、ある固有の定数(例えば100本とか)なのでは?
という気がします。
なので、
Bars - g_entriedBars =Bars - Bars
とはならないでしょうか?
いづれにして、やってみます。
ありがとうございました。
663Trader@Live!:2014/02/05(水) 06:34:54.75 ID:5P1R9xBe
そいつはWindowBarsPerChartだ
664Trader@Live!:2014/02/05(水) 06:39:46.03 ID:GVh99WaU
>>659
コメントありがとうございます。
MT4のインストールフォルダがMEの動作に影響するのでしょうか。
Win7 64bitの環境で、確かにC:\Program Files(x86)にインストールしています。
665Trader@Live!:2014/02/05(水) 07:04:09.43 ID:GVh99WaU
>>663
了解です。
WindowsBarsPerChart
Function returns the amount of bars visible on the chart.
という関数があるんですね。理解不足でした。
一方、Barsの方は
Number of bars in the current chart.
となっているので、どこか(起動時?)を起点とした順番を示す予約変数と理解出来ました。
なので、ご教示の方法で解決できそうです。
ありがとうございました。

仰るとおり、
666Trader@Live!:2014/02/05(水) 07:06:28.31 ID:GVh99WaU
↑文末の
「仰るとおり、」は消し忘れです ><;;
すみません。
667Trader@Live!:2014/02/05(水) 07:31:05.51 ID:XL8sZwun
>>659
横ですが、自分も困ってたので助かりました、ありがとうございます
そんなところにあったのですね
これでこれからは新しい業者のMT4をインストールするたびにNewFileを開いてソースコードをコピペコピペする作業から解放されそうですw
668Trader@Live!:2014/02/05(水) 09:13:55.80 ID:rUDC8fS4
>>659
遅レスですいません
ありがとうございます助かりました
669664:2014/02/05(水) 09:50:19.02 ID:GVh99WaU
>>659
よく見たら649へのコメントでした。
>>664は失礼しました。
670Trader@Live!:2014/02/05(水) 10:10:42.98 ID:RoP2eyfB
EX4形式のインジケーターファイルを以下のフォルダにコピーしたのですが、「カスタムインジケーター」リストに反映されません。
原因・解決策のアドバイスをよろしくお願いします。


■OS:windows8
■サーバー:FXCM-JPYDemo01
■コピーしたインジケーター形式:EX4
■コピー先フォルダ:「MetaTrader4」>「MQL4」>「Indicators」
671Trader@Live!:2014/02/05(水) 11:16:49.67 ID:PiL1jva7
■コピー先フォルダ:「MetaTrader4」>「experts」>「Indicators」

に入れてMT4を再起動、でできないですか?
672Trader@Live!:2014/02/05(水) 11:18:09.34 ID:cqLZ2vVC
今確認すべきは、 MT4 の Build 番号だろう・・・
509以前と それ以降ではフォルダ構成が違う。
673Trader@Live!:2014/02/05(水) 11:48:29.77 ID:h1T6flxr
xp機最強伝説
なんら不具合なし
674Trader@Live!:2014/02/05(水) 12:30:02.68 ID:RoP2eyfB
>671

「expert」フォルダはありませんでした。
「indicator」を探したところ、インジケーターファイル(すべてMQL形式)がたくさんあったので、そこにコピーしました。
675Trader@Live!:2014/02/05(水) 13:04:37.60 ID:DJYgO8mw
>>670,674
build600のフォルダ構成だね。
MetaEditorを起動して、フォルダツリーからIndicatorsを選んで、Open Folderするとエクスプローラで開ける。
676Trader@Live!:2014/02/05(水) 13:16:09.55 ID:RoP2eyfB
>672

600です。

>675

アドバイスありがとうございます。
説明されたとおりメタエディタからフォルダ内を参照しましたが、コピーしたはずのファイルがありません。
677Trader@Live!:2014/02/05(水) 13:21:27.82 ID:RoP2eyfB
>675

すみません。
メタエディタのインジケーターフォルダに直接コピーし、メタエディタからダブルクリック→メタエディタで起動したところ、リストに表示されました。
ただアイコン色が黄色ではなく灰色なので、もうちょっと試行錯誤してみます。

みなさん、ありがとうございまし!
678Trader@Live!:2014/02/05(水) 13:25:19.16 ID:DJYgO8mw
>>676
そこにコピーしないと反映されない。
インストール先フォルダのMQL4はダミーみたいなもん
679Trader@Live!:2014/02/05(水) 13:30:13.64 ID:RoP2eyfB
>678

おお!できました。
すごくたすかりました!

ちゃんと作動しているので問題ないとは思いますが、リストで灰色になっている理由はどうしてでしょうか。
680Trader@Live!:2014/02/05(水) 13:32:30.78 ID:IYWHVAjq
/portableつければいいのに。
681Trader@Live!:2014/02/05(水) 13:42:47.68 ID:cqLZ2vVC
/portable 付けたところで、フォルダ配置が戻るだけで動かない問題は変わらないよ・・・
682Trader@Live!:2014/02/05(水) 13:48:09.44 ID:IYWHVAjq
わかってまんがな。
683タオパイパイ ◆ILoveSex.o :2014/02/05(水) 17:55:47.01 ID:qPZhwgC3
XMもなんともないんだけど
684Trader@Live!:2014/02/05(水) 18:05:13.02 ID:+r6qgEOK
Build600になったら、インジケーターやEAがおかしくなりました…
どなたか、少し前のBuildのMT4がダウンロードできる場所をご存じないですか?
685Trader@Live!:2014/02/05(水) 18:09:33.86 ID:vGct3jDE
686Trader@Live!:2014/02/05(水) 18:15:47.97 ID:+r6qgEOK
>>685

ありです!
神様のような人がいるんですね…

ところで、このBuild600の不具合はもうしょうがないんですかね?
Labelが後ろに行ったりして挙動がおかしい。
687Trader@Live!:2014/02/05(水) 18:25:01.77 ID:+r6qgEOK
すみません、このBuild509のMT4をバージョンアップさせない方法はあるのでしょうか?
688Trader@Live!:2014/02/05(水) 18:35:01.13 ID:bK58FOeR
別ブローカーのBuild600にはEAをインストールして動かすことに成功したが
AxitraderのBuild600にはどういうわけかEAのインストールが反映されない
なんでだろう
689Trader@Live!:2014/02/05(水) 18:35:25.38 ID:YyhLnqnr
UAC機能ONだと次回起動時に警告のダイアログでるから
実行を拒否したら、アップデートされなかった。
数回試してみたけど、問題ないみたいだよ。
毎回起動時にダイアログでるから拒否選択しないとだめだけど。
690Trader@Live!:2014/02/05(水) 18:44:15.99 ID:+r6qgEOK
>>689
ありがとうございます!
691Trader@Live!:2014/02/05(水) 18:46:49.88 ID:19GhZIq4
>>687
未確認だけど今もこの方法が使えるはず
ttp://www.softgate.co.jp/ja/resources/blog/item/20130602-mt4-500-ja
692Trader@Live!:2014/02/05(水) 19:05:36.88 ID:+r6qgEOK
>>691
ありがとうございます!

度々すみません。
アンインストールしたあとBuild509をインストールすると、すでにBuild600に
なってしまっているのですが、なにか消し忘れているのでしょうか…
693Trader@Live!:2014/02/05(水) 19:43:03.31 ID:IYWHVAjq
>>686
>>615で言ったがどうも名前の1文字目でしか上下関係が変わらない感じだな。
694Trader@Live!:2014/02/05(水) 19:47:02.59 ID:IYWHVAjq
違うな、名前を全然見なくなってるな。
名前を変更すると必ず前にくる。
奥行の属性が増えたりしてるのか?
695Trader@Live!:2014/02/05(水) 19:49:32.50 ID:IYWHVAjq
OBJPROP_ZORDERてのがあるな。これ使わないといかんのか。
デフォルトで互換にしとけよ、まったく。
696Trader@Live!:2014/02/05(水) 20:35:59.14 ID:19GhZIq4
>>692
昔は違ったけど、いまはちょっと古いインストーラを使っても
インストーラが最新版をダウンロードしてインストールするから。

ビルド509のインストール後のイメージ(terminal.exeとか)をもらってこないとね。
697Trader@Live!:2014/02/05(水) 20:47:43.32 ID:+r6qgEOK
>>696
ありがとうございます!

>ビルド509のインストール後のイメージ(terminal.exeとか)をもらってこないとね。
誰か、お持ちの方はいらっしゃいませんか…?
698Trader@Live!:2014/02/05(水) 20:56:08.10 ID:IYWHVAjq
>>697
中身のありそうなサイバーのsetupをダウンロードして
ネットワークを切ってからインストールすればいけるかも。
699Trader@Live!:2014/02/05(水) 21:01:33.68 ID:+r6qgEOK
>>698
ネットワークにつなげないと、インストールできないみたいです…
700Trader@Live!:2014/02/05(水) 21:05:15.89 ID:+r6qgEOK
あ、下記のページでBuild402ができました!
http://d.hatena.ne.jp/fai_fx/20090804

でも、公式のものでもう少し新しいやつはないかなぁ。
701Trader@Live!:2014/02/05(水) 21:11:41.11 ID:+r6qgEOK
あ、デモ口座の開設ができないや…
702Trader@Live!:2014/02/05(水) 21:11:46.13 ID:cqLZ2vVC
703Trader@Live!:2014/02/05(水) 21:16:22.25 ID:Vzh0E2JD
メタエディタが使い難い・・・
関数リストのプルダウン復活してくれー!
Askとかパッと出てないし・・・設定で何とかなるのかな(´;ω;`)
704Trader@Live!:2014/02/05(水) 21:24:09.43 ID:+r6qgEOK
>>702
ありがとうございます!

ただ、これをどうすればよいのでしょうか…
705Trader@Live!:2014/02/05(水) 21:30:57.15 ID:PiL1jva7
どこのMT4使ってたの?
706Trader@Live!:2014/02/05(水) 21:35:20.11 ID:+r6qgEOK
公式のやつやFXPROです。
707Trader@Live!:2014/02/05(水) 21:38:24.70 ID:PiL1jva7
500っぽいのならいくつかsetup.exeのストックがあるのだけど
FXDDmalta、Axi、Oanda、Pepperstone、ICMarcket、Thinkforex、GalantFX
これでできるかはわかりませんがうp希望ならうpします。
あとFXDDはFXDDのサイトにメールアドレス入力してデモ口座を申請する方式だったと思います。
708Trader@Live!:2014/02/05(水) 21:40:48.03 ID:+r6qgEOK
>>707

試しに、FXDDでやってみたいです!
709Trader@Live!:2014/02/05(水) 21:42:49.43 ID:PiL1jva7
710Trader@Live!:2014/02/05(水) 21:45:06.07 ID:19GhZIq4
ビルド500は新しすぎる。インストールしたら最新版になるだけ。

>>704
ビルド600にそのterminal.exeとmetalan.exeを上書きして
あとは自動アップデートされないようにすればいいだろ。
711Trader@Live!:2014/02/05(水) 21:47:11.32 ID:Nsypq5ZD
勝手にアップされるがな
xp機だと
712Trader@Live!:2014/02/05(水) 21:50:57.27 ID:7yehwAn+
因みに使いたい業者のサーバIPをぐぐって、「ツール」→「オプション」→「サーバ」で
IPを指定すれば、どこ製のterminalexeでも基本的には使えるんだけどね
取引商品の違いとかで一部制約が発生する可能性はあるけど
713Trader@Live!:2014/02/05(水) 21:54:36.22 ID:+r6qgEOK
あ、できたかも!
714Trader@Live!:2014/02/05(水) 22:03:44.55 ID:+r6qgEOK
出来ました!
どうもありがとうございました!!
715Trader@Live!:2014/02/05(水) 22:40:37.40 ID:DJYgO8mw
GitHubにあげた509のインストーラ、役立たずだと分かったので消した。
インストール時に最新版ダウンロードしてくるとは知らなかったぬ。
716Trader@Live!:2014/02/05(水) 23:01:33.54 ID:+r6qgEOK
>>715
terminal.exeとmetalan.exeが重要なようです。(´・ω・`)
717Trader@Live!:2014/02/05(水) 23:14:15.05 ID:OGtUI+8A
アップデートでMetaEditorにデバッガーが付いたね

>>716
build600ではmetalang.exeは消えてるよ。
718Trader@Live!:2014/02/05(水) 23:30:56.47 ID:19GhZIq4
古いバージョンに戻したければ古いmetalang.exeとterminal.exeを入手しろ
って話であって、ビルド600でmetalang.exeが消えたことは別にどうでもいい。
719Trader@Live!:2014/02/05(水) 23:39:01.97 ID:5P1R9xBe
MT5のMetaEditorがMT4に降臨したというのがどちらかというと正しいような。
720Trader@Live!:2014/02/05(水) 23:39:43.20 ID:OGtUI+8A
自動的にアップデートされるのにどうすんだよ。
意味ねーじゃん

terminal.exe自体をBuild500以前に戻す必要性があるんだよ。
そうでないと自動アップデートされるんだから
721Trader@Live!:2014/02/05(水) 23:42:48.69 ID:OGtUI+8A
>>719
まあそんなとこだね
722Trader@Live!:2014/02/06(木) 00:02:30.58 ID:ZZ6Pz+Zz
>>720
>>689でいけるんだろ。

配列外にアクセスしたら落ちるんならともかく、デバッガは別にい
らないなぁ。そもそもバグなんて出さないから落ちた時にコールス
タック見るくらいしか役に立たん。
723Trader@Live!:2014/02/06(木) 00:10:15.41 ID:bIbnyr//
必要なのは、インストーラ?
FXDDなら445をローカルで使っているけど。
terminal.exe
でよければどっかupするよ。
724Trader@Live!:2014/02/06(木) 00:16:11.46 ID:bIbnyr//
あらら。722で解決でしたかね。
失礼しました。
725Trader@Live!:2014/02/06(木) 00:17:14.54 ID:6UbodoML
探せばアーカイブ自体は見つかる。
build432辺りのやつ
これがそうだけど
http://www.dotup.org/uploda/www.dotup.org4851811.png


>>722
MT4自体起動しねーよ

そもそもいけるんだろって試してないだろ
726Trader@Live!:2014/02/06(木) 00:19:08.51 ID:zrrjevaP
あぁ。>>714見ただけだ。
727Trader@Live!:2014/02/06(木) 00:25:28.46 ID:ptw7dUer
MT4のデモ、8業社使っているんだが、
午前中に起動させると、8社中6社が自動アップデートされた。

夜、別のパソコンにある同じ8業者のMT4を起動させると
8社中1社しか自動アップデートされなかった。

Build600のあまりの酷い出来に、各業者アップデートを見合わせたみたいだなw
728Trader@Live!:2014/02/06(木) 01:09:01.39 ID:FJBQvbJU
Build600 の MQL4 って,ちゃんとしたドキュメントとかリファレンスとかあるんかな
トライアンドエラーで仕様を探るしかないんかw
729Trader@Live!:2014/02/06(木) 01:31:22.74 ID:bIbnyr//
このスレを読んだかんじだと。
DLLへの引数渡しとか、Array系の関数だな。
基礎的な利用では、問題が起きていないんぽいな。
730Trader@Live!:2014/02/06(木) 01:34:36.82 ID:zrrjevaP
とりあえず、ラベルの前後関係の仕様が変わったのが許せん。
731Trader@Live!:2014/02/06(木) 02:01:29.43 ID:bIbnyr//
fai先生がブログを復活するまでか、
豊嶋先生が書籍を書くまで、アップはやめとこう。
732Trader@Live!:2014/02/06(木) 02:22:52.81 ID:/qXqxlBv
スクリプトで試しただけでEAやインジは試してないんですが
void start (){
if( false && false || true ) Print("+++ treu +++");
else Print("--- false ---");
}
build509で false に、build600で true になるコードです
アップデートしてbuild600のterminalで実行したら結果は
旧バージョンと同じ false でした、でも新しいメタエディタで開いて
コンパイルしなおしてから実行したら結果は true になりました
再コンパイルしなかったら以前と同じように動くっぽいので
新しいmql.exeでコンパイルし直したときには気をつけたほうがよさそうですね
同様に短絡評価も新しいほうでコンパイルしてからされるようになりました
733Trader@Live!:2014/02/06(木) 02:32:03.14 ID:QWe0ECeP
Build600は、WindowsXPでは動かないね・・・
起動時にエラーが出て、起動できない。
734Trader@Live!:2014/02/06(木) 02:32:58.41 ID:Wzoi/nUG
>>731
これこれ、豊嶋先生はともかくfai先生に催促するんじゃありませんw
人それぞれ都合というものがあるでしょう

>>732
&&と||の評価順が変わったの?
MQL4の評価順は気持ち悪かったけど、互換性がないのもなあ…
735Trader@Live!:2014/02/06(木) 02:39:24.14 ID:nMCRHLar
評価順序は、forumのリリース情報にも書いてる。
http://forum.mql4.com/60555

Shortened conditions check is now used in logical operations, unlike the old MQL4 version where all expressions have been calculated and the check has been performed afterwards. Suppose there is a check of two conditions with the use of logical AND

if(condition1 && condition2)
{
// some block of operations
}

If condition1 expression is false, calculation of condition2 expression is not performed, as false && true result is still equal to false.

もっとも、こういう変更を自動VerUpで強制しちゃうのはどーかと思うけども。
736Trader@Live!:2014/02/06(木) 03:26:28.93 ID:Wzoi/nUG
>>735
ありがと
仕様変更を見越してではなく、自分が混乱しないようにという理由で、
&&と||が混在する式は必ず括弧を付けたことが功を奏するとは
737Trader@Live!:2014/02/06(木) 05:23:59.38 ID:WKeslhaR
最近、スイーツ()とかが全部関数に見えてくる
738Trader@Live!:2014/02/06(木) 05:55:30.20 ID:hlv+5w54
Build 600 のMQL4仕様は アップデート後のヘルプマニュアルに記載があるよ。

あと、SSE2必須だから、Pen4より古いCPUのマシンで動かないそうだ。
739Trader@Live!:2014/02/06(木) 06:27:29.17 ID:RMVVQwoH
Build600で新しいEAをデモ口座で動かしたんだが、ロットを0.01に
設定したのに0.02でトレードする。で、Build600の別のブローカーで
同じ設定でやってみたらこっちは0.01でトレードした
これって、EAに問題があるのかブローカーに問題があるのか
どっちなんでしょうか?
740Trader@Live!:2014/02/06(木) 06:47:07.61 ID:hlv+5w54
>>739
証拠金額やレバ設定でロットが上がるEAかな?
741Trader@Live!:2014/02/06(木) 08:41:44.23 ID:c8bRlw2g
mt4を起動すると、metaquotes software corp.社のclient terminalという
ソフトウェアをダウンロードするかどうかを毎回きいてくるのですが、
のソフトウェアは何ですか?ダウンロードしても大丈夫ですか?
742Trader@Live!:2014/02/06(木) 08:56:38.95 ID:lQzko0Ki
どのサイトのmt4もダウンロード、インストールできません。
どうしてですか?
743Trader@Live!:2014/02/06(木) 09:06:19.26 ID:8bNt2L/x
自分は5〜6社のMT4を使っているが、そのうち1社のみ自動アップデートに応じた。
他社はパソコンが「ユーザーアカウント制御」で「はい」と「いいえ」で訊いて
くるので、「いいえ」を選択、元のbuild 509のまま使っている。
評価が固まるまでしばらく様子を見るが、MT4を立ち上げると毎回パソコンが
同じことを訊いてくるので面倒だ。
744Trader@Live!:2014/02/06(木) 09:41:22.46 ID:M7y5Kwhn
>>733
えっ、マジ。。
まだXP使ってるんだけど
そろそろマシン入れ替えないとだめかなあ
745Trader@Live!:2014/02/06(木) 11:57:38.76 ID:hlv+5w54
Build 602 キタ━(゚∀゚)━!
746Trader@Live!:2014/02/06(木) 13:25:39.63 ID:RsZRDavH
アップデートの時に、metaeditor.exeの中にMal_Xed-3という脅威が居るからと言ってウィルスバスターがmetaeditor.exeを削除してしまうんですが、どう対処すればいいのでしょうか?
747Trader@Live!:2014/02/06(木) 13:31:28.22 ID:lQsYt1cv
>>746
metaeditor.exeを除外ファイルに指定すしてその後に、
誤検出であることを、ウィルス対策ソフトのベンダーに伝える。
748Trader@Live!:2014/02/06(木) 13:32:20.91 ID:lQsYt1cv
>>746
metaeditor.exeを除外ファイルに指定する。
誤検出であることを、ウィルス対策ソフトのベンダーに伝える。
749Trader@Live!:2014/02/06(木) 13:42:01.23 ID:53lBUG5h
一昨日までaviraもmql.dllに反応してたけど
定義ファイルの更新で大丈夫になったな
virustotalで調べたら他にマカフィーとTrendMicroがウイルスだって言ってた
750Trader@Live!:2014/02/06(木) 13:57:35.35 ID:byw6rzBf
Build600にアップデート
インストールフォルダ配下のMQL4フォルダに全部格納されてるな(自作も含めて)
新規で作成した奴もそこだ
AppDataのほうには保存されてなかった
ちなみにAlpari
751Trader@Live!:2014/02/06(木) 16:16:01.29 ID:WmbKLtpv
Build600でお試しコンパイル
お喋りEAがまともに喋らなくなり、R用のmt4Rはコンパイルエラー
修正が済むまでは509で運用
752Trader@Live!:2014/02/06(木) 16:19:51.62 ID:hlv+5w54
>>751
お喋りEAってナニ・・?
というかどういう仕組みでしゃべるの?
753Trader@Live!:2014/02/06(木) 17:46:19.46 ID:Cfq4ZAKo
Build600になったら、メール送信ができなくなりました。

ちなみに、SMTPサーバーのポートが通常の25ではなく、587で設定しています。
もちろん、Build509の時には、問題なくメール送信できていました。

エラーログ見ると、SMTP認証エラーみたいなんですけど・・・
多分、バクだと思うので、こちらは何も対処できません。。

エラーログ見ると、SMTP認証エラーみたいなんですけど・・・
多分、バクだと思うので、こちらは何も対処できません。。
754Trader@Live!:2014/02/06(木) 17:47:46.95 ID:WmbKLtpv
お喋りEA復活。元々CStringWで受けてたので簡単に直せた。
>>752
Windows7に音声エンジンがありますが、英語なので日本語エンジンを入れてます。
「電子かたりべ」で入手できます。
SAPI5というインタフェースをDLLで組みました。
stringで数値や漢字入りテキストを渡すと音声出力します。
755Trader@Live!:2014/02/06(木) 18:24:37.45 ID:Bc7A+zQP
Build600 問題きとるね
メタクォーツ社のせいで困ったもんだわ
756Trader@Live!:2014/02/06(木) 18:31:19.03 ID:yOwSaH6B
質問です
今朝FXDDMT4がアップデートされたんだけど
今まで使っていたインジケータが使い物にならなくなった
うまく動かない
たとえば直近高値安値の表示も表示されなくなった
いろいろ調べたけどフォルダがかわったりとかもあるらしいけど
なにが原因かもなおせるのかもわからない

だれか直し方わかる人いる?
教えてくださいお願いします
それとも使えるようになるまで待つしかないの?
他社のはまだつかえてるけど
FXDDは602
他社はまだ600だった
757Trader@Live!:2014/02/06(木) 18:36:55.90 ID:YQV1M0Bz
バージョンアップしなくて良かった私
758Trader@Live!:2014/02/06(木) 18:41:33.67 ID:hlv+5w54
>>754
なんか面白そう!
差し支えなければDLL欲しい・・

>>756
具体的に動かなくなったインジケータのソースコードを
ファイルアップローダに上げないと難しいと思うよ
759Trader@Live!:2014/02/06(木) 18:44:09.58 ID:9c0GO0kO
>>756
ソース見たらもちろん直し方は分かるけどさ。
ソースも見ずに、しかもMQLを知らない人に説明するのは無理。
760Trader@Live!:2014/02/06(木) 19:33:42.34 ID:WKeslhaR
関数の引数を関数内の配列数にしたいのですがどうすればいいですか?

int Kansuu(int Hikisuu)
{
int Hairetu[Hikisuu];
}

これだとコンパイルエラーになってしまいます
761Trader@Live!:2014/02/06(木) 19:40:28.42 ID:zrrjevaP
ArrayResize()使え。
762Trader@Live!:2014/02/06(木) 19:40:28.58 ID:6eLMYuLh
ArrayResize
763Trader@Live!:2014/02/06(木) 19:44:40.42 ID:WKeslhaR
>>761>>762
ありがとうございます!!
764Trader@Live!:2014/02/06(木) 20:01:57.46 ID:6eLMYuLh
>>753
パケットキャプチャして調べてみたけど、587は関係ないわ。
なんとEnvelope-Fromがおかしい(画面で設定したFromになってない)。

どうも Envelope-From が test@ホスト名 で固定になってるw
なので、Yahooとかで送ろうとすると、「いや、そのFromおかしいし」って怒られてメール送信させてくれない。

これは、ローカルのメールサーバ使わないとだめですな。
BlackJumboDogとか使おう。
765Trader@Live!:2014/02/06(木) 20:06:24.22 ID:6eLMYuLh
こんなん
220 smtp508.mail.kks.yahoo.co.jp ESMTP
EHLO <ローカルのホスト名>
250-smtp508.mail.kks.yahoo.co.jp
250-AUTH LOGIN PLAIN XYMCOOKIE
250-PIPELINING
250 8BITMIME
AUTH LOGIN
334 ********
********
334 ********
********
235 ok, go ahead (#2.0.0)
MAIL FROM: <test@ローカルのFQDN>
521 smtp.mail.yahoo.co.jp closing transmission channel. This email address must be verified first before you can use it for Sender/From field.
QUIT
766Trader@Live!:2014/02/06(木) 20:09:33.66 ID:WmbKLtpv
>>758
めたとれなうpろだ
ExpertSpeech.dllとExpertSpeech.txtをどうぞ
767Trader@Live!:2014/02/06(木) 20:26:17.87 ID:6eLMYuLh
>>765 は一応forumにレポっておいた。
768Trader@Live!:2014/02/06(木) 21:06:58.07 ID:QxTZ6h+Z
使っている業者でMT4のbuild600がリリースされているんだけど、
これ、MT4再起動したら強制アップデート?
EAの対応状態を調べないと怖くて怖くて。
769Trader@Live!:2014/02/06(木) 21:11:03.22 ID:hlv+5w54
>>766
ありがとうございます!

R用のmt4Rは、旧のex4 をそのままコンパイルせずに使うと動くけど、
mt4R.mqh のみ修正してコンパイルしてもダメっぽいですね(T_T)
770Trader@Live!:2014/02/06(木) 22:41:50.12 ID:KsTEWt8Z
>>769
なれないPascalソースを拾い物の関数を使って修正したぞい
https://github.com/micclly/mt4R/releases
から拾って使ってみて。
MQL4/Scripts/mt4RTest.mq4 しかテストしてない。
あと Win2012R2 + R-3.0.2 でしかテストしてない。
動かなったらゴメン。
wide string を毎度毎度 ansi string に変換する手抜きなので、
多少パフォーマンスは落ちてると思う(微々たる程度だと思われるけど)
771Trader@Live!:2014/02/06(木) 22:47:51.02 ID:IIOsFWvg
強制的にMQL5に移行させようという変更なの?
772Trader@Live!:2014/02/06(木) 22:49:33.95 ID:KsTEWt8Z
まあそんなところかなぁ
MQL4+MQL5=new MQL4
というおかしなことになった。
773Trader@Live!:2014/02/06(木) 23:02:49.43 ID:Vjwz+/Pa
Build509より古いの何パターンかあればUPして下さいお願いします
774Trader@Live!:2014/02/06(木) 23:09:55.09 ID:9c0GO0kO
775Trader@Live!:2014/02/06(木) 23:15:32.91 ID:Vjwz+/Pa
>>774
776Trader@Live!:2014/02/06(木) 23:34:48.05 ID:bIbnyr//
>>769
mt4Rも、不具合でてるの?
777Trader@Live!:2014/02/06(木) 23:37:47.49 ID:sUBDjzjL
どうせもいいけどlibraryが図書館になってるよね
778Trader@Live!:2014/02/06(木) 23:37:55.07 ID:nMCRHLar
>>776
MQL4 の string が char* から wchar_t* になったから、
mt4R に限らず、DLLが char* で受けてるライブラリは改修しないと使えない
779Trader@Live!:2014/02/06(木) 23:38:00.18 ID:8bNt2L/x
Alpari UKから今回のbuild 600へのアップデートによるトラブルへの対処策
についてとりあえずのsuggestionが届いた。ここが一番早かったな。EAや
インジが作動しないことがあるので、新しく保存されたソースプログラムを
再度コンパイルしてくれとあった。エラーメッセージが出なければ引き続き
正常に作動するとのことだ。
780Trader@Live!:2014/02/06(木) 23:48:08.38 ID:bIbnyr//
>>778
ありがとう。これを機にsorce()を使ってできるだけ、
RとMT4のやり取りを減らそうかな。
781Trader@Live!:2014/02/07(金) 00:22:38.70 ID:oUpooZVc
地味に文字化け直ってるね
チャート読み込み時の文字化けと通貨ペアの詳細のところの文字化け
782Trader@Live!:2014/02/07(金) 00:28:11.99 ID:lAkeoj/s
Build600は問題がありますね。 一応下記の様なことがあったのでシェアしたいと思います。

FXDD、Alpari、Pepperと使っていますが、メタエディターが起動しても5秒ぐらいで
全て終了してしまいます。

原因はウイルスバスターの下記の削除かと思ったのですが、復活させても
元にもどりません。
2014/02/04 11:50,Mal_Xed-3,不正プログラム,C:\Documents and
Settings\All Users\ApplicationData\MetaQuotes\WebInstall\mt4clw.png\
metaeditor.exe,削除済み,リアルタイムスキャン」


それとAlpariさんに質問を出したのですが、下記が回答になります。

弊社はMT4 最新バージョンBuild600について検証中でございます。
MT4 build600は、一部のウイルスソフト(ウイルスバスター)から
誤認識されている事象が起きています。
それに関してはMT4の開発元Metaquotes社に問い合わせしております。

MT4起動中にMetaEditorの不具合がある場合はウイルスソフトの除外対象にするか、
ウイルスソフトを一時停止すれば改善する可能性があります。
783Trader@Live!:2014/02/07(金) 00:31:17.33 ID:caDcg0Z5
>>782
除外しないと、復活させてもすぐ検疫されそうな気がするけど
784Trader@Live!:2014/02/07(金) 00:31:43.41 ID:caDcg0Z5
あ、ごめん、下半分見えてない状態でコメントしちゃった。。。
785Trader@Live!:2014/02/07(金) 00:32:39.01 ID:nXm/EMIq
FXCMのMT4でインジケーターを追加する場所がなくなってるんだけど
改変されたのか?
786Trader@Live!:2014/02/07(金) 00:33:10.56 ID:caDcg0Z5
連投すまん。
誤認識で問い合わせるべきはMetaQuotesじゃなくて、アンチウィルスのベンダー(トレンドマイクロなど)だと思うんだけど。
787Trader@Live!:2014/02/07(金) 00:34:34.98 ID:caDcg0Z5
>>785
>>675 をやってみよう
788Trader@Live!:2014/02/07(金) 00:43:19.99 ID:nXm/EMIq
>>787
しばらく使わなかったパソコンにMT4入れてたらなったんだけど
とりあえずやってみるわ
789Trader@Live!:2014/02/07(金) 00:48:10.08 ID:nXm/EMIq
解決すますた サンクス 
790782:2014/02/07(金) 01:18:34.52 ID:lAkeoj/s
>>786
ちなみに下記を復活させてもウイルスバスターは無反応だよ。
さらにウイルスバスターを終了してMT4を起動しメタエディターを
起動しても5秒ぐらいで終了してしまう。

2014/02/04 11:50,Mal_Xed-3,不正プログラム,C:\Documents and
Settings\All Users\ApplicationData\MetaQuotes\WebInstall\mt4clw.png\
metaeditor.exe,削除済み,リアルタイムスキャン」

問題は、MT4にあるような気がする。
一応明日になってしまうが、トレンドマイクロにも情報は上げる予定です。
791Trader@Live!:2014/02/07(金) 05:41:23.91 ID:MbxtHmRS
メタクォーツ社ってFXのプラットホーム市場でシェア持ってるから
調子こいてるよな
競合会社が出てきてこんな糞会社つぶしてほしいわ
792Trader@Live!:2014/02/07(金) 07:42:16.26 ID:4yM4Z5sp
国内業者が連合してソフト会社を立ち上げればいいのにね
勝算は十分あると思うよ
なにしろ、ローソク足、一目均衡をあみだした国民性がある
793Trader@Live!:2014/02/07(金) 07:44:52.32 ID:Z+5uhMtu
こういうことを平気でやるのがいかにも露助の会社
794Trader@Live!:2014/02/07(金) 07:49:36.23 ID:aslxE1I0
たとえ不安定でもクソ言語のmql4から解放されるなら文句は言わないw
795Trader@Live!:2014/02/07(金) 08:01:04.02 ID:ob9OoRHP
VTでもJForexでも好きなの使えばいいのに...
796Trader@Live!:2014/02/07(金) 10:26:46.17 ID:nQZCpfeR
>>791
競合他社はあるんだよ。

日本国内で強かったVTもあっさり負けた。
MT4の自由度の高さは圧倒的だから。
それにユーザー無料なのが大きい。
ライセンス違反だけどDLL書いて他業者に発注するのもやれちゃうわけさ。
昔InteractiveBrokersに発注する為のDLLを公開してた人がいたが
MetaQuotesの逆鱗に触れたらしい。
797767:2014/02/07(金) 10:28:01.00 ID:6VGrTe5K
>>765 が build603 で修正された。

>>753
ということで最新の build603 使えばおk
798767:2014/02/07(金) 10:29:30.97 ID:6VGrTe5K
つーか、MetaQuotes は build ごとの CHANGES 出してほしいな。。。
何が治ったのかさっぱりわからん。
799Trader@Live!:2014/02/07(金) 10:31:56.43 ID:nQZCpfeR
MT4をTWSのAPIへブリッジさせる仕組みだったようだが、ライセンス違反になっちゃうんだよなあ。
それ自体cTraderもPROTRADERもNetTraderAdvisersもVTも同じだから仕方ないわな。
ライセンスしてる業者以外への発注はご法度だから
800Trader@Live!:2014/02/07(金) 10:35:29.50 ID:nQZCpfeR
>>798
大きな変更があった時は公式フォーラムにスレが立つからわかるけど、それ以外はFIXだから
使ってみたら、あっ直ってると気づくくらいなんだよなあ
801Trader@Live!:2014/02/07(金) 10:42:57.65 ID:6VGrTe5K
>>800
そうそう。 forum でレポっても、「直すよ」「直したよ」すら付かないしさ。
他のプロダクトでよくある、チケットシステムおいておいてほしいわ。
802Trader@Live!:2014/02/07(金) 10:43:10.03 ID:ZxuRbO7h
>>770 さんのmt4Rで動きました。
mt4R.mqhを一度MetaEditorで読み込み、Save As Unicodeで上書すると
良い感じ。感謝。
803Trader@Live!:2014/02/07(金) 11:05:08.20 ID:6VGrTe5K
>>802
確認ありがとうです m(__)m
そっか、エンコーディング直すの忘れてました。。。
UTF-16 にしたのに更新しておきました。
804Trader@Live!:2014/02/07(金) 12:10:23.94 ID:2wn87o9/
直しおわった
一仕事だぜ
805Trader@Live!:2014/02/07(金) 12:13:54.52 ID:4T41d4IP
MetaQuotesとしてはMT5は諦めたの?
806Trader@Live!:2014/02/07(金) 12:18:13.79 ID:2wn87o9/
こんどはクラスが使える
C++にかなり近づいた
807Trader@Live!:2014/02/07(金) 12:25:59.65 ID:PNcWmSAp
ソフトウェア設計において
MT4レベルに軽さと多機能を両立させることてそんなに難しいのか?
VTとかもう少し軽くならないもんか
808Trader@Live!:2014/02/07(金) 12:37:33.61 ID:YI7ZttLt
>>790
アップデートまたはインストール途中で誤検知して勝手に削除されてます。
バスター終了した状態で再インストしてからバスターを起動し、
できたmetaeditor.exeを復元すれば大丈夫です。
809Trader@Live!:2014/02/07(金) 12:55:06.25 ID:2wn87o9/
早い話MQL4はMQL5に変身したみたいですね
しかもだいぶ前から通知済みだったみたい^^;

http://pg-forex.com/blog/mt4/29/
810Trader@Live!:2014/02/07(金) 13:02:54.41 ID:Q6WHtOmo
インジのパラメータ変更しても外部変数の値が初期化されない
動かなくなったから若干修正が必要だな
811Trader@Live!:2014/02/07(金) 13:10:31.91 ID:dsY6DHdE
環境によって大分変わるみたいだね

OS:
CPU:
812Trader@Live!:2014/02/07(金) 13:18:48.28 ID:aslxE1I0
>>806
でも、テンプレートないからコンテナ書こうとして、!?ってなった。
公式のCArray*に従うならCObjectをスーパークラスにしてアップキャスト/ダウンキャストで
対応すべきなんだろうけど・・・・・・イマイチ気が乗らない('A`)
813Trader@Live!:2014/02/07(金) 13:34:22.63 ID:aes/rrFp
>>797

build600から、build603に、どうやってアップデートするのですか?

再起動しても自動アップデートしない場合、
本家サイトからDLして上書きインストールするのかな?
814Trader@Live!:2014/02/07(金) 13:41:31.94 ID:qY/qWa2p
>>813
demo.metaquotes.net:443 に繋いで、右下の通信量がうちどめになったら再起動するとアップデートされる。
上書きインストールのが楽かな。
815Trader@Live!:2014/02/07(金) 15:13:22.63 ID:C7H0QvHW
ADXmの色の変化について質問です。

ADX[i]=zdx;

if (ADX[i]>ADX[i+1]) fss=1;
if (ADX[i]<ADX[i+1]) {if (fss==1) ADXL[i+1]=ADX[i+1]; fss=2;}
if (fss==2) ADXL[i]=ADX[i]; else ADXL[i]=0.0;

抜き出すとここなのですが、一本前との比較で大きければADXのまま、小さいとADXLとなり色が変わる
ということはわかるのですが、チャートでは時々ADXに変化するはずなのに色が変わらないことがあります
これは、何故なのでしょうか?スレチなら質問スレのほうに移動します...
816Trader@Live!:2014/02/07(金) 15:34:15.28 ID:j+iUZNJv
>>815
ADX[i] == ADX[i+1] となる場合の処理を忘れてないかい?
817Trader@Live!:2014/02/07(金) 15:54:23.57 ID:C7H0QvHW
>>816
自作ではなく一般的に出回っているADXmから引っ張ってきています
この条件式を理解しょうとしていますが、何故このような書き方をしているのかがわかりません。
この理由が分かる方に説明してほしく、ラインの傾きで色の変化だと思うのですが、合わない理由も
ここにあるのかと.・・・ 
818Trader@Live!:2014/02/07(金) 16:16:05.05 ID:4lzJ+n/h
build600のメタエディターで新規にカスタムインジケータを指定して作成した、
空のスケルトンプログラムでさえ

cannot create interface of mql compiler 

のエラーでコンパイルできない。
どうして?
819Trader@Live!:2014/02/07(金) 16:25:57.09 ID:j+iUZNJv
>>817
ADX[i]=zdx;

if (ADX[i]>ADX[i+1]) ADXL[i]=0.0;
if (ADX[i]<ADX[i+1]) ADXL[i]=ADX[i];

おかしなコードが何故おかしいかを考えるよりも
単純明快なコードを書いてみて、挙動を比べてみたら分かるんじゃない・・?
820Trader@Live!:2014/02/07(金) 16:29:22.06 ID:6VGrTe5K
ADXm.mq4
http://blog.livedoor.jp/fxmt4indicators/users/image/ADXm.mq4
これかな。

仕組みは init から追わないと理解できないよ。
SetIndexBuffer(2, ADXL);
SetIndexEmptyValue(2, 0.0);
があることを理解していないと、
ADXL[i]=0.0;
が理解できない。
821Trader@Live!:2014/02/07(金) 16:35:08.23 ID:j+iUZNJv
>>818
今は Build603 で試したほうが良いかも。

空のスケルトンだと、 OnInit() と OnCalculate(....)の2関数だけで、
40行くらいのですよね?私の環境ではコンパイルできました。
822Trader@Live!:2014/02/07(金) 16:37:42.16 ID:LifqieRF
質問、次の関数を実行すると、正しくaの値==2
が返ってくるのだが、
ifの条件式がfalseの場合でも、aがきちんと宣言されている。

int function(){
if(false){int a = 1;}
else a = 2;
return (a);
}

問題ないのはいいんだが、こういう書き方はよくないのかな?
結構、このような書き方をしてるので、気になる。
823Trader@Live!:2014/02/07(金) 16:38:42.87 ID:C7H0QvHW
>>819
double ad0 = iCustom(NULL,0,"ADXm",1,i);
double ad1 = iCustom(NULL,0,"ADXm",1,i+1);

if(ad0>ad1){
if(hantei !=1 ) UpArrow[i]=Close[i];hantei =1; }

if(ad0<ad1){
if(hantei!=-1) DownArrow[i]=Close[i];hantei =-1; }

これはADXmをiCustomで読み込んで色の変化でシグナル出すのですが
単純明快なコードで実践するとADXmの本体の色の変化と矢印が異なるという結果でした。
そこでなぜそのコードで書かれたのかが知りたくて質問しました。
824Trader@Live!:2014/02/07(金) 16:40:29.07 ID:3Wh4PZKF
シグナルサウンドアラートを一定間隔の時間でリピートさせたいんですが
何か簡単な良い方法はありませんか?
いろいろ試しましたがどうも上手く出来ませんので教えてください
825Trader@Live!:2014/02/07(金) 16:44:25.84 ID:dy574LMp
build600 から build603 にしようと思って
http://www.metatrader4.com/
から落としてるのに build600 になる不思議
再インスコでもアップデートできねえw
826Trader@Live!:2014/02/07(金) 16:48:57.79 ID:C7H0QvHW
>>820
下向きの条件が出た時にADXLがADXIの変わりになるってことですよね。
もとあるADXに上書きでADXLが描写されるってことでいいと思うのですが・・・

その際の条件式が i > i+1とか簡単な条件じゃないってことなのですか?
ADXL[i]=0.0;ADXLを空っぽにしなさい EMPTYにしなさい 結果ADXが
再描写されるってことですよね?
827Trader@Live!:2014/02/07(金) 16:49:12.01 ID:j+iUZNJv
>>825
demo.metaquotes.net:443 に繋いでる?
828825:2014/02/07(金) 16:51:23.08 ID:dy574LMp
>>827
やっぱ普通にダウンロードしても最新版にはならんの?
829Trader@Live!:2014/02/07(金) 16:59:32.37 ID:j+iUZNJv
>>828
ならぬよ。
830825:2014/02/07(金) 17:27:49.47 ID:dy574LMp
>>814 にもあるけど
[ファイル] - [デモ口座の申請] で
demo.metaquotes.net:443 を選べばいけた

>>829 ありがとう
831Trader@Live!:2014/02/07(金) 17:29:37.06 ID:j+iUZNJv
>>824
いろいろ試した方法を知りたい・・・
832Trader@Live!:2014/02/07(金) 17:44:26.35 ID:j+iUZNJv
http://forum.mql4.com/60694
MetaTrader 4 Client Terminal build 603
1.Terminal: improved routing of trade requests when several of them are sent simultaneously from different MQL4 applications.
2.MQL4: fixed operation of ArrayBsearch binary search function for signed integer arrays.
3.MQL4: improved managing Expert Advisor re-initialization.
4.MQL4: improved debugging of MQL4 applications.
5.Fixed errors reported on the forum and in crash logs.

修正点キテた
833Trader@Live!:2014/02/07(金) 17:49:02.44 ID:aes/rrFp
>>830
私の場合では、アカウントは何もしなくても、
(接続サーバーはアルパリJ)
上書きで、600 → 603 になりましたw

あと、データーフォルダが、
PC1では、インストールフォルダ内に設定されるのに、
PC2では、Application Data内に設定される違いがよくわかりません。

ちなみにPC1とPC2はXPで、ほぼ同じ環境です。
データフォルダの場所についてご存知の方いますか?
834Trader@Live!:2014/02/07(金) 17:52:34.80 ID:6VGrTe5K
>>832
> 5.Fixed errors reported on the forum and in crash logs.

ここはしょりすぎだろw
835Trader@Live!:2014/02/07(金) 17:59:15.71 ID:6VGrTe5K
>>826
うん、仕組みはその理解であってるね。

> チャートでは時々ADXに変化するはずなのに
というところまで分かってるのだから、そのときのADX、ADXLの値が配列内でどうなってるかわかると、
原因究明できる気がするよ。
ADX[i], ADX[i+1],
ADXL[i], ADXL[i+1]
をログに吐き出しておくといいんじゃないかしら。

build 509 まではそんなことなかったのに、 build 600 からおかしくなった!
というなら、MT4のバグかも。
836Trader@Live!:2014/02/07(金) 18:06:08.79 ID:nQZCpfeR
>>801
そこんとこのサポートは昔っから悪いと言われ続けてきてるけど
改善する氣ないみたい。

>>807
国内ベンダーはどこに重きを置いてるのかわかんない物しか作らない・・・。
ラガルトテクノロジーのTFTraderしかり

トレードをしてマイルを貯めて、そのマイルで勝ち組トレーダーに乗っかろうとか
流行りのソーシャルトレードに対応させたようだが、EA使えるみたいだがMQL4フル互換でない。
海外だとPFSOFTのPROTRADERだとDLLも使えるけど、MQL4で書かれたファイルをインポートすんのがいまいちよくわかんね。

この機能は良いと思ったが
http://www.dotup.org/uploda/www.dotup.org4855269.png

Pentium E6600、A10 6800K、i5 4670K(4GにOC)、i7 4770Tの4つで動かしたが
Pentium E6600では重い。
A10 6800Kではサクッとは言えないが動かせる。
あとの2つはサクッと動かせる。
起動前の空き容量は1G近く欲しい感じがした。

マルチコアCPU必須で出来たらAVX対応が望ましい
837Trader@Live!:2014/02/07(金) 18:32:41.64 ID:aslxE1I0
>>822
#property strict環境だとそもそもコンパイルすら通らない。
838790:2014/02/07(金) 18:33:25.81 ID:lAkeoj/s
>>808
>バスター終了した状態で再インストしてからバスターを起動し、
>できたmetaeditor.exeを復元すれば大丈夫です。

アドバイスありがとうございます。
無事動作しました。以下、手順とメタエディターの違いなどをシェアしたいと思います。


アドバイス通りにMT4削除→バスター停止→再インスト→MT4起動
→ウイルスバスター起動、metaeditor.exe削除→ファイル復元 
以上の内容でメタエディターが正常になりました。

一応参考程度に情報を載せておきます。
正常になったメタエディターは、ver5.0 Build883です。
他にもMT4をインストールしてあるのですが、こちらは何もしてないので
メタエディターが5秒ぐらいで終了になります。

終了になったメタエディターは、ver4.0 Build509です。
どちらもAlpari経由でインストです。
839Trader@Live!:2014/02/07(金) 18:34:34.94 ID:ob9OoRHP
>>815
> チャートでは時々ADXに変化するはずなのに色が変わらないことがあります
って具体的にどんな時?おかしいと思う状態のキャプチャを。
>>805
お前はまた答えも知らないくせにわかったようなこと言って混乱させてるのか。
840Trader@Live!:2014/02/07(金) 18:40:00.25 ID:ob9OoRHP
>>837
strictだと変数定義がブロック内というように変わった。
変更リストに書いてある。↓のすぐ上。
http://forum.mql4.com/60555#auto_copy
841835:2014/02/07(金) 18:42:04.18 ID:6VGrTe5K
>>839
たぶん自分のこと言ってると思うんだけど。
混乱させるようなことを言ってるつもりはないよ?
答えを知ってるつもりでも書いてないし。
「こうしたら答えがわかるんじゃない?」ってことを書くのがダメなスレだっけ
842Trader@Live!:2014/02/07(金) 18:44:02.80 ID:ob9OoRHP
ちょっとわからないけど、
とか書いておけ。
843835:2014/02/07(金) 18:44:45.18 ID:6VGrTe5K
なんでその但し書きがないと、「わかったこと」になるの?
844Trader@Live!:2014/02/07(金) 18:46:23.65 ID:ob9OoRHP
お前の書きようがそう見えるから但し書きをまず書けと言ってるだよ。
あるいはコテつけとけよ。NGにしとくから。
845Trader@Live!:2014/02/07(金) 18:47:32.25 ID:kMMWUU59
こんちには

ウイリアム%R(50%以上なら青 5m15m30m1H) OR モメンタム(0以上で青など)で
マルチタイム バー みたいなの ありますか?
846835:2014/02/07(金) 18:48:39.03 ID:6VGrTe5K
煽りあいをするつもりはないから、もう少し気を付けてかくよ。
847Trader@Live!:2014/02/07(金) 18:50:49.48 ID:ob9OoRHP
どうせ無理なんだろうからコテつけろ。
848835:2014/02/07(金) 18:54:46.95 ID:6VGrTe5K
なんで決めつけるの?
とりあえず、 >>815 の話題にはもう加わらないことにするから、ごめん。
849Trader@Live!:2014/02/07(金) 18:57:05.50 ID:kMMWUU59
うんこだ お前たち
850Trader@Live!:2014/02/07(金) 18:57:20.84 ID:ob9OoRHP
そもそもおかしいと思うような状況を見たことがないんだが、
これ>>820とか見たら答えを知ってるのにわざと書いてるとしか見えないだろ。
851Trader@Live!:2014/02/07(金) 19:03:26.53 ID:ob9OoRHP
>>849
すぐそういう言葉使うのはお里が知れるよ。
852Trader@Live!:2014/02/07(金) 19:14:10.59 ID:FQtsOMXN
build600のトラブル修正方法もやっとすべて判明したようだ。
ここへの投稿を参考にするが一番役に立った。
853Trader@Live!:2014/02/07(金) 19:29:06.61 ID:x9kvZ0ja
>>837 >>840
ありがとう。
現状。大丈夫だけど、良くはないという認識でいうことかな。
ちなみに本来のC言語だとアウトかしら。
854Trader@Live!:2014/02/07(金) 19:33:28.09 ID:ob9OoRHP
普通の言語だと変数のスコープはブロック単位。つまりC/C++だとアウト。
宣言した位置以降がスコープになる言語って大昔に何かあったような
気がすけどなんだったかな...
855Trader@Live!:2014/02/07(金) 19:46:28.55 ID:x9kvZ0ja
訊いてよかった。ありがとう。
ソースを修正します。
856Trader@Live!:2014/02/07(金) 20:00:05.05 ID:ob9OoRHP
あと、論理演算の||の方が&&より優先順位が高いっていう変な仕様も
大昔の言語であったようななかったような。(これもstrictでC/C++準拠に)
優先順位がない言語ならあったけどなんだったっけ...
857818:2014/02/07(金) 20:25:45.69 ID:4lzJ+n/h
自己解決。

Aviraで警告が出てるだけと思っていたが、一部正常にアップデート
できていなかったみたい。
Aviraを止めて上書きインストールしたら、正常にコンパイルできる
ようになった。

あと、FXProで上書インストールしたんだが、Build604になってるね。
表示(V)がちゃんと修正されている。
858815:2014/02/07(金) 20:27:16.10 ID:k7IGt/Pb
ID変わっていますが>>815です
すみません。自分が火種を起こしたみたいで・・
ID:ob9OoRHPさん 
キャプチャーしてうpしようと思っています。しばらくお時間ください。明日になるかもしれませんが・・
ID:6VGrTe5Kさん
ログを吐かして参照したほうがいいですね。頭の中ではわかっているはずなのに結果が違って
どうしてなのか疑問に思えて質問しました。レス、本当にありがとうございます。

5分足でADMx 14、 52 レベル25以下での同時で色反転がかなり有効はポイントでそこでのEA作成しようと
思い、まずはサインを出すインジを作ろうと思ったのですが、なかなか上手くいかず、質問しました
みなさん、本当にありがとうございます
859Trader@Live!:2014/02/07(金) 20:37:13.32 ID:dy574LMp
>>840
MQL5 から newMQL4 に移行してきたんだけど
hoge() {
for (int i = 0; ...
for (int i = 0; ...
}
っていうのが変数宣言が多重だってエラーになってた

おかげさまでコンパイルできたよ,dクス
860Trader@Live!:2014/02/07(金) 20:52:28.13 ID:aes/rrFp
既にBuild604
図書館はなおってないw

グローバル変数とファンクションの変数名が同じだと警告される。
変数名を別に変えたけど、前のほうが使いやすかった気がします。
861Trader@Live!:2014/02/07(金) 20:56:28.80 ID:Z+5uhMtu
EAの調子が悪いから止めた
来週から前バージョンでやる
メタ社は阿呆
862Trader@Live!:2014/02/07(金) 21:25:32.46 ID:aslxE1I0
>>860
メンバ関数の引数名とメンバ変数名が同じでも警告出る。
this.メンバ変数名で回避できるのにウザい大きなお世話('A`)
863Trader@Live!:2014/02/07(金) 21:58:35.96 ID:j/+QfRHx
metaquotesは無茶しやがるな
864Trader@Live!:2014/02/08(土) 00:17:50.94 ID:EsFDvJ09
うんこ で お宅だ
865Trader@Live!:2014/02/08(土) 05:04:25.50 ID:wHkj+NFF
Build600になってから変だ。
新しいバージョンになってDLしたインジケータが反映されない。

\Program Files (x86)\FxPro - MetaTrader 4\experts\indicators
ここに入れているのだがなぜだろうか?
同じ症状の方いますか?
866Trader@Live!:2014/02/08(土) 05:13:18.35 ID:gQ1wmf4S
867Trader@Live!:2014/02/08(土) 09:03:38.06 ID:TCA7wkwy
build600から生じたトラブルの解決法は分かったが、今回デスクトップの背景の
壁紙が変えられたり、ネットの開始画面が変えられたりして、かなりの迷惑を
被った。MT4と互換性のあるような新しいプログラム言語作ってくれ。
868815:2014/02/08(土) 09:17:54.97 ID:R4gVnsqO
>>815です
ADXmの画像をうpしました。Build600のバージョンです。

http://u3.getuploader.com/mt/download/965/ADXm+%E7%94%BB%E5%83%8F.jpg

よろしくおねがいします。
869815:2014/02/08(土) 09:56:42.23 ID:R4gVnsqO
{if (fss==1) ADXL[i+1]=ADX[i+1]; fss=2;}
ここがあるから一本前の数値がADXに変化しても次の足でADXLになると
消されて色の変化がしないってことはわかったのですが、逆にADXLからADXの変化は
一本前の数値にかかわらず変化する。イーブンな変化じゃない条件式だってことはわかりました

ちなみに黄色の○と赤色の○の場所がADXとADXLの変化する際に一本前での変化の違いです
おかしな条件式と思うのは自分がおかしいからですかね?

http://u3.getuploader.com/mt/download/966/ADXm2.jpg
870Trader@Live!:2014/02/08(土) 10:05:15.59 ID:d8aG4PYS
おまおは

ラインでもなんでもいーんだけど

タッチしたらアラーとがなる。
けど、そのローソク内でタッチしまくるとうるさいから
そのローソクでタッチは1回のみなるだけで、
その後はローソク確定まで鳴らさない

というサンプルコード教えてください。
上記の質問の要点としては、

@タッチした瞬間を検出するコード high(0)?とかかな?
Aアラーとをそのローソク内で2ど鳴らさない

というサンプルコードをご教示頂きたいです。
よろしくお願いします。
871Trader@Live!:2014/02/08(土) 10:23:06.57 ID:TCA7wkwy
ADXmはトレンドが読みづらい、ADXの方が真正のトレンドがつかみやすい。
872Trader@Live!:2014/02/08(土) 10:25:48.78 ID:2fSB4tc6
Build604でメニュー欄が、ファイル、ファイル、挿入から、ファイル、表示、挿入に修正されたようですが、
メタエディターがおかしい。以下のように、ダブルクオートの間に日本語を入れるとダブって表示されるのですが、
何か解決法はありますでしょうか?
SetIndexLabel(0,"短期移動平均線");

また、コンパイルすると以下のような”warning”が出るのですが、無視してはダメなんでしょうか?
not all control paths return a value
873Trader@Live!:2014/02/08(土) 10:47:52.81 ID:i7FXO07g
アップデート待機中って日本語で出るwww
しかも新規鯖で業者名を入力するだけで
一覧がいっぱい出る
874Trader@Live!:2014/02/08(土) 11:37:55.40 ID:tvanPtwU
>>872
MQ社にクレーム入れるしか無いね。
フォントを日本語フォントに変えると、さらに不便になる。


not all control paths return a value
これは適当に return(0); でも追加しておけばおk
875Trader@Live!:2014/02/08(土) 11:40:20.70 ID:uqwIJ/U/
>>870
1.最新の価格はClose[0]で拾える。目標ラインが現在地の上にあるのか下にあるのかで
if(Close[0] >= 目標ライン) なのか if(Close[0] <= 目標ライン) なのかが変わる。

2.datetime形式のグローバル変数を作り、アラートを出したらTime[0]をその変数に格納する。
アラートはそのグローバル変数とTime[0]が同一でない場合にのみ鳴らすようにする。

if(Close[0] >= 目標ライン){
if(作ったグローバル変数 != Time[0]){
アラートを出す;
作ったグローバル変数 = Time[0];
}
}
876Trader@Live!:2014/02/08(土) 11:42:43.59 ID:O5MF7l7h
テストしてると時々OrderClose error 145が出ています。Buildは509です。
(OrderModify error 145 ではありません。)

logで確認すると年間500回位ポジションを取って、そのうちの10ポジション程度だけ出ています。
以下、エントリーしてから決済するまでのlogです。
2013.01.18 06:27 TEST EURJPY,M15: open #23 buy 0.10 EURJPY at 120.568 sl: 120.146 ok
2013.01.18 10:51 TEST EURJPY,M15: OrderClose error 145
2013.01.18 10:51 TEST EURJPY,M15: OrderClose error 145
2013.01.18 10:51 Tester: stop loss #15 at 120.146 (120.145 / 120.147)

試しに同じEAでストップロス設定を全く行わない条件でテストするとエラーは一つも出ませんので
もしかするとストップの設定で何か問題が生じているのかな?とは思うのですが…

どのような原因が考えられるでしょうか?
877Trader@Live!:2014/02/08(土) 11:46:58.58 ID:O5MF7l7h
すみません、コピペの際に見やすくするために余分な箇所を消していたらミスしていました
#
×2013.01.18 10:51 Tester: stop loss #15 at 120.146 (120.145 / 120.147)
○2013.01.18 10:51 Tester: stop loss #23 at 120.146 (120.145 / 120.147)
#15となっていますが、正しくは#23です。
878Trader@Live!:2014/02/08(土) 11:59:42.62 ID:d8aG4PYS
875さんへ さんきゅーです!!
2についてはサスガですね。こんな方法があったなんて。
1については、ローソクが確定の時になるような形でしょうか?
当方としては、さわった瞬間にって感じなので
Bidとかのほうがいいのでしょうか?
879Trader@Live!:2014/02/08(土) 12:02:19.84 ID:R4gVnsqO
こんな感じ?
bool AlertFlag = false;
int start()
{ double test;
 test = iMA(NULL,0,10,0,MODE_SMA,PRICE_CLOSE,i);
 if( test >= bid )
 { if( AlertFlag == false)
  {Alert(" 平均線に到着しました",test);
   AlertFlag = true;}}
 else
 {AlertFlag = false;}
 return(0);
880Trader@Live!:2014/02/08(土) 12:09:49.95 ID:oV88d8DU
>>876
orderTypeがOP_BUY OP_SELL以外のポジションにオーダークローズだしてるんじゃないのかな。
881Trader@Live!:2014/02/08(土) 12:10:10.38 ID:uqwIJ/U/
>>878
Close[0]はその時点での最新の値になるからBidと同じ。
882Trader@Live!:2014/02/08(土) 12:14:26.91 ID:tvanPtwU
>>869
青ラインの上に オレンジラインを書く方式ではどうしようもないですね。

橙 - 青 - 橙 
になってほしいのでしょうけど、ラインを表示するために、一つ前の色を塗り替えてるから、
橙 - 橙 - 橙 
になってる。

以下の改造でラインをやめてドット表示にすれば、所望の結果を得られる。

init 内に
SetIndexStyle(1,DRAW_ARROW);
SetIndexArrow(1,159);
SetIndexStyle(2,DRAW_ARROW);
SetIndexArrow(2,159);
を追加して、
判定部分を
ADX[i]=zdx;

if (ADX[i]>ADX[i+1]) ADXL[i]=0.0;
if (ADX[i]<ADX[i+1]) ADXL[i]=ADX[i];
に修正
883Trader@Live!:2014/02/08(土) 12:14:49.25 ID:d8aG4PYS
いつ
AlertFlag = true

false
になるんだ
884Trader@Live!:2014/02/08(土) 12:15:46.26 ID:gMwe5P4P
>>878
もともと4本値はすべてBidベースだし、Closeは過去Barに於いては終値だけれども
現在Barに於いてはその瞬間の現在値だからCloseでいいんだよ
HighやLowを使っても出来るけど売り条件、買い条件で使い分けなければいけないので面倒
885Trader@Live!:2014/02/08(土) 12:16:39.45 ID:d8aG4PYS
みんなありがとう
884
めちゃくちゃわかりやすい説明ありがとう
886Trader@Live!:2014/02/08(土) 12:27:42.09 ID:d8aG4PYS
応用的質問いいですか?

当方が意図してるのは、1分や5分のチャートでタッチしたらアラートをだす,というものを作ろうとしてるのですが、

自分の意図してるそのタッチするレート条件は、4Hや1Dで算出したレートでアラートをだすというものをつくってます。

そのローソク内(1分や5分)での追加アラートは879さんの回答の方法で回避はできるですが、

4Hや1Dのローソクが確定するまでアラートは抑制するという方法はありますでしょうか?

皆様の頭脳、知識、拝借させてください。
887Trader@Live!:2014/02/08(土) 12:40:23.74 ID:cMlx5NNp
509でコンパイル→600で動く

600でコンパイル→509で動かない

この認識で合ってますか・・・?
888Trader@Live!:2014/02/08(土) 12:46:06.70 ID:uqwIJ/U/
>>886
現在表示している時間枠以外の時間枠を参照するiTimeという関数があるので、これを使ってバーの開始時間を取得する。
あとは同じ。
http://www.metasys-seeker.net/MQL4_Reference_ver1/19-09_iTime.html
889Trader@Live!:2014/02/08(土) 12:46:56.64 ID:8JotBwuv
>>887
だいたいは合ってる。
890Trader@Live!:2014/02/08(土) 12:52:44.01 ID:d8aG4PYS
888さんありがとうございます。
↓と同じってことですよね?

2.datetime形式のグローバル変数を作り、アラートを出したらTime[0]をその変数に格納する。
アラートはそのグローバル変数とTime[0]が同一でない場合にのみ鳴らすようにする。

if(Close[0] >= 目標ライン){
if(作ったグローバル変数 != Time[0]){
アラートを出す;
作ったグローバル変数 = Time[0];
}
}
891872:2014/02/08(土) 12:58:13.62 ID:2fSB4tc6
>>874 レスありがとう。
>MQ社にクレーム入れるしか無いね。
まだ、使えるレベルではないですね。

>not all control paths return a value
>これは適当に return(0); でも追加しておけばおk
質問の仕方が悪かったのですが、私的に作った関数でこのような警告が出ております。
出てるのは、bool型の関数で、void型、double型では出ておりませんのですが…

これとは別に、自作インジをコンパイルすると、
"no colors defined for indicator plot"なる警告が出るインジもあり orz
892Trader@Live!:2014/02/08(土) 12:58:23.95 ID:uqwIJ/U/
>>890
そうです。ちなみにアラートだけではなくて、タッチしたかどうかの判定も全部別の時間枠でやりたい場合には
Close[]ではなくiClose()(さっきのURLの左側にあります)を使うなど、別の時間枠を参照できる関数を使う必要があります。
893Trader@Live!:2014/02/08(土) 13:19:16.98 ID:d8aG4PYS
892
ありがとうございました!!
894Trader@Live!:2014/02/08(土) 13:33:29.90 ID:d8aG4PYS
ちなみにこれわかります?

【背景・現状】
H4やD1でとあるレートを算出する。

そのレートにタッチしたら矢印をつける。

H4やD1でのチャートでは、そのローソクのところに矢印が表示されるが、下位の時間足

にチャートを切り替えると、H4やD1のスタート時間に矢印が表示されてしまう。

じゃなくて、意図したい内容は、時間足を切り替えた時に、タッチした時間(分)の箇所に

矢印がくるようにしたい。


【質問事項】
意図したい内容は、時間足を切り替えた時に、タッチした時間(分)の箇所に

矢印がくるようにしたい。
895Trader@Live!:2014/02/08(土) 14:07:10.81 ID:tvanPtwU
>>894
1分足チャートを元に矢印を正しい位置に表示できるようにしておけばいいんじゃね?
896Trader@Live!:2014/02/08(土) 14:13:16.32 ID:d8aG4PYS
それがわからない!!
897Trader@Live!:2014/02/08(土) 14:19:15.93 ID:7CjKcly3
>>770 さんのmt4Rの検証報告
RGetBoolで変数名が1文字しか渡されない不具合があります
898Trader@Live!:2014/02/08(土) 14:21:31.10 ID:sajQ+Pts
>>894
タッチした時のチャート上の時刻をどこかに保持しておいて、
時間足を変えた時はその保持している情報を元に矢印を配置しなおすというのはどうですか?
899Trader@Live!:2014/02/08(土) 14:37:14.53 ID:7CjKcly3
>>897 に追加。RGetIntegerも同じ現象です
900Trader@Live!:2014/02/08(土) 14:48:25.63 ID:fKZxxHZQ
なんでデモでログインすると604にUpdateされるんだろ
へんなの
901sage:2014/02/08(土) 15:27:49.37 ID:tXR+6wo7
Build604になってExpertsフォルダがユーザーのAppDataフォルダを見るようになったのは仕様?
何のために\MQL4\Experts\フォルダがあるんだろうか
902Trader@Live!:2014/02/08(土) 15:53:06.08 ID:8JotBwuv
/portable オプション付けて起動したときには、そこを使う。
オプション付けないときにも存在している意義は知らん。
903Trader@Live!:2014/02/08(土) 15:56:40.72 ID:7CjKcly3
Build604でチャートにEAを設定して、
全く別のEAとかインジケータをコンパイルすると、設定したEAが再起動する。
EAを稼動させながらの開発ができない。何か防ぐ方法がないかな。
904Trader@Live!:2014/02/08(土) 16:18:49.90 ID:oV88d8DU
>>903
多重起動
905Trader@Live!:2014/02/08(土) 17:35:49.51 ID:1QqZBz9x
>>901
俺のも build604 なんだけど
C:\Program Files (x86)\MetaTrader 4\MQL4\Experts
がナビゲーターカラムで参照されてるぞ
もちろん起動オプションは付けてない
何が違うんだろう
906Trader@Live!:2014/02/08(土) 17:41:55.70 ID:fKZxxHZQ
\MQL4\Experts\が本来のExpertフォルダだね
アップデートしたらとりあえずEAはぜんぶ\MQL4\Experts\に移動すべき
907Trader@Live!:2014/02/08(土) 19:16:49.65 ID:IhrweQvw
>>869
ADXという性質から妥当なところじゃないか。

>>891
>not all control paths return a value
値を返さずにreturnしている場所があるという警告なので
必要な値を返すようにすれば警告は出なくなる。

>>894
矢印を作る自にTime[0]ではなく、TimeCurrent()を使えばいい。
908タオパイパイ ◆ILoveSex2k :2014/02/08(土) 20:19:05.18 ID:H3ZEY2hP
EA作ろうと思ってメタエディタいじってたら
偶然ウィルス作ってしまって
セキュリティソフトが反応して
MT4が開けなくなったんですけど
こんなことってあるんですか?
909Trader@Live!:2014/02/08(土) 20:23:44.74 ID:IhrweQvw
ない。
910891:2014/02/08(土) 21:01:04.24 ID:2fSB4tc6
>>907
if
else if
else//<--これで解決した。ありがとう。
911タオパイパイ ◆ILoveSex2k :2014/02/08(土) 21:01:17.23 ID:H3ZEY2hP
まぁ世界的な新発見は偶然の産物が多いらしいからな
912Trader@Live!:2014/02/08(土) 21:12:24.24 ID:fKZxxHZQ
ミラーまで用意してご苦労なこった
913Trader@Live!:2014/02/08(土) 21:37:57.57 ID:/EQj5Do2
市況2の3大嫌われ者
 真正キチガイ・ダルマたんJP
 沖繩の底辺・タオパイパイ
 バカ大工・大棟梁
914Trader@Live!:2014/02/08(土) 22:01:16.01 ID:7CjKcly3
>>903 自己解決
MetaEditorでなく、SciTEなど外部エディターでコンパイルすれば良い。
915Trader@Live!:2014/02/08(土) 23:49:58.00 ID:TCA7wkwy
みんなbuild600にアップデートされて困っているようだが、こちらのパソコン
はWindows7だけど一向にアップデートされないのはどうしたわけ?
VistaとWindows8はNTTのウイルスクリア、7はMicrosftのSecurity Essentials
が入っている。7は相変わらずbuild509のままだよ。
916Trader@Live!:2014/02/08(土) 23:53:34.66 ID:tvanPtwU
>>915
起動時のターミナルログに ニューバージョン来てるって ログ残ってない?
917Trader@Live!:2014/02/08(土) 23:57:35.40 ID:IhrweQvw
>>915
業者による。
918Trader@Live!:2014/02/09(日) 00:55:46.62 ID:7o8yKpcn
>>915
問題が多発したから、ブローカーがアップデートを見送ってるのだと考える。

同じブローカーでも、早い時期に再起動した場合は、自動アップデートして、
build600になってしまったが、
苦情殺到でアップデートを中止した時期に、再起動した場合は、
>>915 のままだと思う。

なぜならばw
私の同じ環境の複数台PCが、再起動するタイミングが遅いPCは、
build509のまま、何も変わらないのに、
早いタイミングで再起動した場合のみ、
build600にアップデートしているからw
919Trader@Live!:2014/02/09(日) 00:59:00.48 ID:7o8yKpcn
× >>915 のままだと思う。

○ build509のままだと思う。

失礼すますた
920Trader@Live!:2014/02/09(日) 02:44:09.84 ID:qVO47aDc
new MQL4 で string [] をDLLに渡すとき、
いままでのMQL4どおり MqlStr のような構造体を作って受けなきゃいけないのは変わってないんだけど、
その構造体がいままでどおりのをwchar_tに変えただとダメ。
struct MqlStr {
int len;
wchar_t* str;
int dummy;
};

どうももう4バイト必要らしい。
さらに、配列の要素2個目からはlenが0に見える。
この辺のこと、ぐぐってもいまいち情報が出てこないなあ。
921Trader@Live!:2014/02/09(日) 04:33:26.72 ID:cjla6foH
>>920
http://www.mql5.com/en/forum/1739
ぶちゃいけど文字列配列は嫁にはやれんとのお達しなんで
とりあえず従うしかない。
922Trader@Live!:2014/02/09(日) 04:46:10.41 ID:qVO47aDc
>>921
おぉ、ありがとうございます。
StringToCharArrayを使わないといけないと。
wchar_t で渡したいなら、
StringToShortArray
http://www.mql5.com/en/docs/convert/stringtoshortarray
をつかえ、ということですな。
923Trader@Live!:2014/02/09(日) 05:23:50.57 ID:qVO47aDc
>>770
で上げたmt4Rのバグを直しました。
https://github.com/micclly/mt4R/releases
から最新の-b6を取ってください。
変更点はRGetString/RGetStringVector/RGetBool/RGetIntegerのしょーもないバグ修正です。

Codebase についたコメントで直したんですけど、
いまここでmt4Rでgrepしたら >>897, >>899 で既にバグ報告いただいてましたね。。。
遅くなって申し訳ない。。。(気づいてなかった)
924Trader@Live!:2014/02/09(日) 05:28:20.50 ID:qVO47aDc
>>923

> 変更点はRGetString/RGetStringVector/RGetBool/RGetIntegerのしょーもないバグ修正です。
間違えました。
RAssignString/RAssignStringVector/...
です。
925Trader@Live!:2014/02/09(日) 08:12:02.71 ID:H9oy0tOu
チャートをスクロールするのに、マウスのホイールでやるとカクカクと波打って見づらいです。
なんとかならないでしょうか。よろしくお願いします。
926Trader@Live!:2014/02/09(日) 10:03:37.58 ID:818mKNql
PCが異常に重くて、その要因が分からず、
仕方なくリカバリして、再度MT4を入れなおしたら、過去のログインを受け付けてくれない・・・
これって、再度デモ申請しなきゃいけないの?
927タオパイパイ ◆ILoveSex2k :2014/02/09(日) 10:05:15.29 ID:aAp0jeCt
IDとパスワードをメールからコピペして貼り付けてログイン
928Trader@Live!:2014/02/09(日) 10:11:30.15 ID:818mKNql
それやったんだけど、回線不通なんだよね。
929タオパイパイ ◆ILoveSex2k :2014/02/09(日) 10:19:28.16 ID:aAp0jeCt
もう新しく作ったほうが手っ取り早い
930Trader@Live!:2014/02/09(日) 10:20:49.10 ID:818mKNql
そうだね ありがとう
931タオパイパイ ◆ILoveSex2k :2014/02/09(日) 10:28:54.71 ID:aAp0jeCt
ずーっとEA作ってるんだけど動かない
テストジェネレーターアンマッチデータエラーって出てる
調べてみたらバックテストの基本からできてなかったっぽい
periodconvertrとかなんだよ
前まで普通にバックテストできてたのに
932Trader@Live!:2014/02/09(日) 10:36:16.48 ID:uf01t8mu
>>931

他のeaはバックテストできるの?
933タオパイパイ ◆ILoveSex2k :2014/02/09(日) 10:45:03.20 ID:aAp0jeCt
>>932
MACDサンプルならできる
934Trader@Live!:2014/02/09(日) 10:48:49.95 ID:RnSQvQxb
>>918
なるほど。確かに7は最近使っていなかったんだ。
ありがとう。
935Trader@Live!:2014/02/09(日) 11:06:51.02 ID:RnSQvQxb
豊嶋先生はいち早く「FXメタトレーダー4&5」を出されていたが、今回の
build600へのアップデートを予想されていたのだろう。買ってそのままにして
あるが、これ読めば今回の更新後のEAやインジ作成に役立つの?
936Trader@Live!:2014/02/09(日) 11:30:01.85 ID:fnq7lWC5
>>935
new MQL4 は MQL5 に近いから役に立つよ
937Trader@Live!:2014/02/09(日) 12:16:12.84 ID:RC4qwkji
907さん回答ありがとう。
でもこれわからないよ〜↓

> >>894
> 矢印を作る自にTime[0]ではなく、TimeCurrent()を使えばいい。

具体的のどーすんだ??
938Trader@Live!:2014/02/09(日) 12:20:13.74 ID:9wenJaXr
>>937
矢印はオブジェクトで描いてるんだろう?
そうであれば時刻指定にTimeCurrent()の値を使えばいい。
index buffer使っているならコードの修正が必要かな。
939Trader@Live!:2014/02/09(日) 12:50:37.88 ID:a7OJn4Pf
言語仕様を今時に変えて意味あるんかな。
個人的には手続き型で十分なんだけどな。
そんなに長いコード書くわけじゃないし。
940Trader@Live!:2014/02/09(日) 14:00:29.04 ID:RC4qwkji
>>938
つーことは、タッチしたとこは、一度変数に確認して覚えておいて、
オブジェクトクリエイトでその変数を指定

ってことかな??
941Trader@Live!:2014/02/09(日) 14:01:17.73 ID:RC4qwkji
上記
まちがえた

×つーことは、タッチしたとこは、一度変数に確認して覚えておいて、
○つーことは、タッチしたとこは、一度変数に格納して覚えておいて、
942Trader@Live!:2014/02/09(日) 14:35:08.91 ID:zzxawUDb
int r/o
のr/oって何ですか?
943Trader@Live!:2014/02/09(日) 14:38:11.66 ID:fnq7lWC5
>>942
r/o = read only
944Trader@Live!:2014/02/09(日) 15:20:04.45 ID:eNw99DQ1
インジに書き込んだ、deinit()関数について、
バックテストにおいてどのタイミングでdeinit()が実行されますか。
可能性として以下の3つだと思いますが、実際の実行タイミングが
解る方いらしゃいますか。

@バックテスト終了時に自動的に実行
Aバックテスト中に「ストップ」ボタンが押された時
BチャートをMT4から削除した時
945942:2014/02/09(日) 15:31:08.35 ID:zzxawUDb
>>943
ありがとー
946Trader@Live!:2014/02/09(日) 16:53:19.65 ID:fF1WFoRU
質問 
MT4アップデートで600とか602にされたのを
509になんとかもどしたんだけど
フォルダ構成とか他社の名前がはいってたりするんだけど問題ないのかな?
ログイン申請とか位置ずれてたり名前がちがうだけぽいんだけど
947タオパイパイ ◆ILoveSex2k :2014/02/09(日) 17:25:47.35 ID:aAp0jeCt
また変なプログラムの組み方しちゃってPCフリーズしたから再起動したんだけど
再起動したらさっきまでのメタエディタのデザインと変わってるんだけど
これが噂のbuild600なのか?
インジ自体はさっきのまま使えてるからいいけど
アイコンとかも変わっちゃってて編集しにくいんだけど
948タオパイパイ ◆ILoveSex2k :2014/02/09(日) 17:28:11.14 ID:aAp0jeCt
でもこれタグの色が何を示してるのか色分けされてるっぽいから慣れたら見やすくなるかも
949Trader@Live!:2014/02/09(日) 17:43:01.56 ID:aDlOjpUO
>>944 さん
その関数の中にアラート出す処理とか入れた状態で
@ABを実行してみるのはどうですか?
950Trader@Live!:2014/02/09(日) 19:02:12.92 ID:9wenJaXr
>>944
1と2だね。3はバックテスト終了後に開くチャートということならEAには関係なし。
ちなみに、UninitializeReason()は2の場合は4(REASON_CHARTCLOSE)で
1の場合は0。
951タオパイパイ ◆ILoveSex2k :2014/02/09(日) 19:43:16.08 ID:aAp0jeCt
新しくインジ作ろうとして新規作成から作ったら
今まで出なかったエラーが出た
確認したら一番上の方に
#version"1.0"ってのと
#strivt
ってのがあったんで
それ消したら普通にコンパイルできた
952タオパイパイ ◆ILoveSex2k :2014/02/09(日) 20:29:24.92 ID:aAp0jeCt
コンパイルしても出てこない・・・
953Trader@Live!:2014/02/09(日) 20:41:52.15 ID:Ep9aIWFw
構って土人がウザ過ぎる
954Trader@Live!:2014/02/09(日) 20:48:50.38 ID:qVO47aDc
Twitterにでも呟いとけ、だれかかまってくれるよきっと。
955タオパイパイ ◆ILoveSex2k :2014/02/09(日) 20:49:31.48 ID:aAp0jeCt
復元したら治った
956Trader@Live!:2014/02/09(日) 20:55:35.15 ID:JILoghTR
  /\___/\
/        ::\
|           :|
|   ノ   ヽ、   :| どこのスレでもウザがられる構って土人
| (()), 、 (()) 、.:: :|
\ ,,ノ(、_, )ヽ、,, ::/
/`ー `ニニ´一''´ \
957Trader@Live!:2014/02/09(日) 21:00:06.69 ID:RnhkvRGh
今度はここに居着いたのか。
負けるたびに、FXなんてバカクセーやめたー、とかほざいてたのに。
市況2の三大バカと言われるだけはあるね。
958タオパイパイ ◆ILoveSex2k :2014/02/09(日) 21:07:24.80 ID:aAp0jeCt
【STAP細胞】https://www.youtube.com/watch?v=ZDgo7xbtWQ8
小保方博士「何度もやめようと思った。
ピンチになると必ず助けてくれる人が現れた。」


研究には挫折が付き物ですねぇ〜
959Trader@Live!:2014/02/09(日) 21:23:24.08 ID:Qs0nE4rd
土人、泣いてんのか?
960Trader@Live!:2014/02/09(日) 21:38:48.36 ID:RnhkvRGh
879 名前:タオパイパイ ◆aZPandora. [] 投稿日:2012/07/20(金) 21:19:15.64 ID:labNmWfD [18/26]
 1.2194 L 発射

886 名前:タオパイパイ ◆aZPandora. [] 投稿日:2012/07/20(金) 21:32:32.84 ID:labNmWfD [22/26]
 >>885 ここは簡単には抜けんよ
 http://iup.2ch-library.com/i/i0695342-1342787527.jpg


887 名前:タオパイパイ ◆aZPandora. [] 投稿日:2012/07/20(金) 21:35:35.17 ID:labNmWfD [23/26]
 ユーロドルは今月1.2600まで上がる


890 名前:タオパイパイ ◆aZPandora. [] 投稿日:2012/07/20(金) 22:06:45.75 ID:labNmWfD [24/26]
 なんだよこれ!!FXおもしろくない!!
 やーめた!!FXやーめた!!

779 名前:タオパイパイ ◆aZPandora. [sage] 投稿日:2012/07/20(金) 23:11:42.92 ID:labNmWfD [5/5]
 もういやだああああああああああああああああああ!!!
 FXなんてもう嫌だああああああああああああああああ!!!
 FXなんてだいっきらあああああああああああああああい!!

848 名前:タオパイパイ ◆aZPandora. [sage] 投稿日:2012/07/20(金) 23:21:16.34 ID:labNmWfD [7/7]
 どうせ俺みたいなダメ人間は何をやってもダメなんだよ
 一生誰かにこき使われて毎月家系は火の車で家族もろとも苦労して
 死んでいく運命なんだよ
 俺の人生なんてどうせそんなもんさ
 気付いてはいたんだよ
 でもちょっとだけ・・・1%でも可能性があるならそれに賭けてみたかったんだよ
961タオパイパイ ◆ILoveSex2k :2014/02/09(日) 21:45:08.27 ID:aAp0jeCt
>>960
2012/07/20(金) 21:19:15.64

にせんじゅうにねんなながつ!?
wwwwwwwwwwwwwwwwwwww
すごいねきみ
2012年7月から粘着してるの?
すげーわwwwww

あっぱれw

他にやることねーの?
すげーわ
962タオパイパイ ◆ILoveSex2k :2014/02/09(日) 21:45:44.21 ID:aAp0jeCt
俺もすげーな
何度も諦めても立ち上がるとか
おれすげーわ
963タオパイパイ ◆ILoveSex2k :2014/02/09(日) 21:47:02.21 ID:aAp0jeCt
粘着荒らしが来ちゃったし他のスレにいきまーす
      ハ,,ハ
     ( ゚ω゚ )  ご迷惑をおかけしましたー
    /    \
  ((⊂  )   ノ\つ))
     (_⌒ヽ
      ヽ ヘ }
 ε≡Ξ ノノ `J
964Trader@Live!:2014/02/09(日) 22:13:00.38 ID:2740x1ws
  /\___/\
/        ::\
|           :|
|   ノ   ヽ、   :| 逃げた先のスレでもフルボッコされる粘着ナマポ土人
| (()), 、 (()) 、.:: :|
\ ,,ノ(、_, )ヽ、,, ::/
/`ー `ニニ´一''´ \
965Trader@Live!:2014/02/09(日) 22:46:54.77 ID:f84NxTRQ
MT4で表示されている、損益計の計算式
誰か教えて。
966タオパイパイ ◆ILoveSex2k :2014/02/09(日) 22:55:16.15 ID:aAp0jeCt
600で苦労してる人はこのサイトで509に戻せるらしいよ。俺は2月5日の復元ポイントで復元した
http://www.softgate.co.jp/ja/resources/blog/item/20120206-avoid-updating-to-mt4-600-ja
コメント欄に509に戻すためのファイルも貼られてたよ
967Trader@Live!:2014/02/09(日) 23:32:23.97 ID:NQfdWeub
ダメな人間は何をやってもダメ
生活保護の金でトレードするようでは虫けら以下
968Trader@Live!:2014/02/10(月) 01:22:03.30 ID:UkKMnUC3
このスレ終わったら、新たに起てず
もう一つのメタトレスレに移動、統合しような。
969Trader@Live!:2014/02/10(月) 03:48:12.31 ID:RzFX0leJ
これを機にオブジェクト指向始めようぜ
970Trader@Live!:2014/02/10(月) 10:27:15.19 ID:WEJ1RGDt
すみません。MT4がおかしいのでアンインストール&再インストールしたのですが、今まで使用していたインジケータ(RCI等)の表示が変なんです。
MT4はforex.comです。インジを保存する場所がMQL4という今までと違ったフォルダになってますが、ここで良いのでしょうか?

他の愛用インジも、チャート上に表示されるはずなのにサブウィンドウに表示されたり、グチャグチャです。全て削除したりしていて、バグが起きてしまったのでしょうか?
これが表示できないとトレードどころじゃないです・・・

至急、直したいので対策を教えてもらえますでしょうか?宜しくお願いします
971Trader@Live!:2014/02/10(月) 10:31:02.36 ID:LCtfNWCG
お、そういえばFOREX.comもbuild更新あきらめたみたいだなw
>>970
古いbuildに戻すか新しいbuildに合わせてインジケーターの修正をすればいい。
972Trader@Live!:2014/02/10(月) 11:26:35.40 ID:c6Plnfyz
build604になっても、まだメール送信がバグってますね。
オプションからのテスト送信は正常に動きますけど、
EAから送ると、エラーも吐かずにメールが消えますw
973Trader@Live!:2014/02/10(月) 11:57:43.91 ID:GAHDxeo1
>>972
うそん。forumに「直ったありがとう」って言っちゃったごめん。
いま改めて確認してみると、メール送信は成功していると思います。
が、ヘッダのFromが
From: "Expert Advisor" <>
とかいうふざけたことになってて、たぶん、携帯キャリアメールとかだとスパムで落とされてると思うです。
ためしに、Gmailあたりに送信してみてください。
迷惑メールフォルダに入ると思います。
forumにはもっかいレポっておきますね。申し訳ない。
974Trader@Live!:2014/02/10(月) 15:37:19.27 ID:fxcPp+XO
こんにちは。
エラー処理と思われる箇所でよく見かけるのですが、

if(A==B)return(-1);

のように、returnの引数が-1の場合、
MT4は具体的にはどのような反応をするのでしょうか?
975Trader@Live!:2014/02/10(月) 15:49:47.47 ID:E3pB0aBH
>>974
その返り値を受取る部分が作りこまれていれば、
値によって何かしら反応が変わるんだけど、
これまでのMT4では特に変化無かったよね。

Build600 以降はどうなんだろう
976Trader@Live!:2014/02/10(月) 15:57:14.20 ID:GAHDxeo1
Build600以降のnew MQL4だと、
OnInit だけ int 値を戻すことが許可されてる。
旧来の int/deinit/start の場合も、 init だけ有効だと思う。

MT4のHelp→MQL4 Referenceで参照できるヘルプで、
「Event Handling Functions」を見てみるのが良いかと思う。

説明の限りでは Strategy Tester でしか OnInit の戻り値は影響しない。
実際に試してみたけども、
return INIT_FAILED; としても、Strategy Testerではエラーログが出るけど、普通に動かすと何も出ない。
977Trader@Live!:2014/02/10(月) 16:23:38.97 ID:RzFX0leJ
メールは携帯のなりすまし設定とかをあまーくすれば受信できるようになります
978Trader@Live!:2014/02/10(月) 16:29:04.90 ID:LCtfNWCG
しかし、毎回毎回よくこんなしょーもないバグを仕込むもんだな。
QAもろくにしてないんだろうか。
979Trader@Live!:2014/02/10(月) 16:45:34.43 ID:dAvzJKRU
現在 Build604にアップ中
980Trader@Live!:2014/02/10(月) 18:00:57.21 ID:fxcPp+XO
974です。
ありがとうございます。

戻り値に対する記述がとくになければ、
return(0)でもreturn(-1)でも深い意味はないという認識で良いのかな。

init内で不適切な外部変数の組み合わせに(-1)を返せば最適化の時間を少しは節約できたりとか?

Referenceも読んでみます。
981Trader@Live!:2014/02/10(月) 18:29:17.41 ID:c6Plnfyz
>>973
確かに、From: <Expert Advisor> とかなってるw
テスト送信だとFrom: "Client terminal" になってる。

なるほど携帯だとスパム扱いされるのか。
謎が解けましたw
982Trader@Live:2014/02/10(月) 19:35:32.02 ID:D7bqNVPA
2時間足を表示させようと、Period_Converter_Opt.mq4を入れてみたんですが、
カスタムインディケータに表示されません。
なんか、スクリプトに似たようなのが入ってるが関係ないみたいだし。
無理やりカスタムインディケータにぶっこんでも
薄く表示されて無反応でわけわからん
みなさん、どうやって他の時間足をだしていますか?
983Trader@Live!:2014/02/10(月) 19:38:10.90 ID:GAHDxeo1
メール送信地味に困ってる人多いかなあと思って、
ShellExecuteW で VBS 使ってメール送信するライブラリをでっちあげてみました。
よかったら使ってください。
ダウンロードはこちら:
https://github.com/micclly/mt4-mailer/releases/tag/v1.0.0-SNAPSHOT-01
使い方はこちら(下に日本語版載せてます):
https://github.com/micclly/mt4-mailer/blob/master/README.md
984Trader@Live!:2014/02/10(月) 19:43:23.08 ID:GAHDxeo1
ま、SendMailも数日のうちに直ると思いますけども。。。
985Trader@Live!:2014/02/10(月) 21:34:09.59 ID:L7mcysfV
MT4がビルド600にアップデートされ、今後はMT5に移行していく可能性が高いようなので、
そろそろMT5の導入を考えているのですが、MT5のインジケーター製作代行業者はまだあまりいないのでしょうか?
これまでMT4のインジ製作をお願いしていた方々にことごとく断られ、すっかり意気消沈です。
MT4ビルド600対応もしくはMT5のインジケーター製作代行業者をご存知の方がいらしたら、ぜひご教示いただけますと幸いです。
よろしくお願いいたします。
986Trader@Live!:2014/02/10(月) 21:44:12.87 ID:GAHDxeo1
>>985
MT4がbuild600でMQL4にMQL5を取り込んだということは、MT4がまだ死なない、
むしろこれからもメンテナンスしていく、っていうことだと見た。

なので、いまのとこ国内での採用がほぼ皆無なMT5に
これから急に移行が進むということは可能性はそんなに高くないのではないかな?

質問に答えてなくてすみません。
987Trader@Live!:2014/02/10(月) 21:44:35.59 ID:E3pB0aBH
>>985
英語が話せるなら海外の有料フォーラムで対応してくれていたような。
988Trader@Live!:2014/02/10(月) 21:45:01.53 ID:onZQ2Nbi
どうせMT5が両建てに対応すれば一気に普及するんだろ?
989Trader@Live!:2014/02/10(月) 21:53:31.39 ID:TJcCmn00
>>985
まともなプログラミング能力がある人ならMT4でもMT5でも受けてくれるんじゃない。

ただ、今の段階からMT5を導入する必要があるとはとうてい思えないんだが。
990Trader@Live!:2014/02/10(月) 21:54:17.16 ID:FZuuazSy
初心者用のサイトをみると
 int Ticket;
 Ticket = OrderSend()
という記述を見ますが、Ticketを宣言する意味が分かりません。
なぜこれで注文処理が行われるのですか?
また、Ticketを使わずにそのまま
 OrderSend()
だけではダメなのでしょうか?
991Trader@Live!:2014/02/10(月) 22:18:31.44 ID:wLYyQX7a
OrderSendが成功したらTicketにチケット番号が返される。
これが必要であればこうするし、不要ならばOrderSend()でも構わないだろ。
しかし普通、失敗したら何かしらの動作をさせるはずだからTicket = OrderSend() のほうが都合がいい。
992Trader@Live!:2014/02/10(月) 22:23:05.38 ID:BLUf2w1L
> 今後はMT5に移行していく可能性が高いようなので

なんでそういうことになるんだ?逆でしょ?
ビルド600をリリースしたことでMT5がとりあえずしばらく消える

こんなに混乱してるのに
MT4 / MT4ビルド600 / MT5なんて3つも乱立させるわけない

とりあえずビルド600の混乱を収束させるために
すべてのリソースと時間を使うだろ
993Trader@Live!:2014/02/10(月) 22:46:42.34 ID:0QhDEzDb
日ノ丸印のプラットフォームが待たれるね
994Trader@Live!:2014/02/11(火) 00:03:27.79 ID:RzFX0leJ
MADEinJAPAN神話なんてもうとっくに崩壊している
995Trader@Live!:2014/02/11(火) 00:16:11.14 ID:MwXavSBr
MT5が思うように採用されないので、MT4の内容を実質的にMT5に置き換えたんだろうな。
996Trader@Live!:2014/02/11(火) 00:16:52.67 ID:+Ma1lMD+
>>986-987>>989>>992
皆様レスありがとうございます。
>今後はMT5に移行していく可能性が高いようなので
この情報についてですが、今回ビルド600にアップデートされたことによってかなりMT5寄りの仕様に変更されたので、
今後メタクオーツ社は今回のように無理やりにでも変えて行っていずれはMT5に移行させようとしている、と色々なブログ等で見て、
すっかりその気になってしまっただけですので、初心者の勘違いでしたら申し訳ありません。
現在はビルド509の業者をメインに使用していますが、サブMT4は既にビルド600に強制アップグレードされ、
メインの業者もいつ600を導入してくるのか毎日びくびくしています。
今回のアップグレードによって、今までMT4で使用していたインジが一気に動作しなくなってしまったので。。
997Trader@Live!:2014/02/11(火) 00:23:11.08 ID:P+DoMzk1
そんなに嫌なら文句言いながら600使ってないで、
509に戻して強制アップデート禁止しておけばいいじゃん。
いまは509でサーバに接続できるんだし。
>>966 読んだ?
998Trader@Live!:2014/02/11(火) 00:23:17.64 ID:qyG4F2zv
次スレ建ててくる
999Trader@Live!:2014/02/11(火) 00:24:32.63 ID:qyG4F2zv
と、思ったら建てられなかったスマン!!
1000Trader@Live!:2014/02/11(火) 00:28:14.20 ID:3xhSlKrq
【MT4/5】MetaTrader質問スレ ★1
http://hayabusa3.2ch.net/test/read.cgi/livemarket2/1377931721/
こっちに移動でええんちゃう
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。