【MT4/5】Meta Trader初心者専用57【EA素人】
■ このスレッドは過去ログ倉庫に格納されています
REASON_CLOSEはterminal.exeの終了だから遅すぎなんじゃね
適当にどれか使えるでしょ あるいは単純に常に全部deleteしとけばいいじゃん >>295
そういう仕様なら納得です。
OrderTicket()は問題なく取得出来ているのに
OrderDeleteだけが実行できなくて困っていました。
DLLはハードルが高いので別の方法を検討したいと思います。
ありがとうございました。
>>296
ターミナルの×ボタンを押したときは
他のイベントは拾えない様でした。 EA止める
オーダーキャンセルのスクリプト実行する
閉じる
でいいんじゃね
カッコ悪いというなら頑張れ >>299
俺はプログラマーじゃなくてトレーダーだからそんなこと微塵も気にしないけど、
このスレの住人の多くはプログラマー崩れだろうから、そんなブザマなことはしたくないだろうね
そんなところに時間を使うくらいならもっとストラテジーの研究に時間を使えって思うけどね >>300
その程度の足回りに気を使えない奴がストラテジーのコア部分を見落とし無しで実装出来るはずがないっていうのが確率論なんだよね。この後の自分だけは例外って感じの必死レスまで予測可能 ふうん、やっぱりそこは触れちゃいけない部分だったみたいだね
まあ頑張れよ >>301
確率論関係ないじゃん…
お前はちょっと落ち着け どっぷりなプログラマーほどプログラムだけでなんとかしようとする。
優秀なSEはプログラムにこだわらず柔軟に解決方法を模索する傾向にあると思う。
は、さておき、そもそもキャンセル完了を確認してからMT4を閉じるべきじゃないかね。
サーバー側や通信不具合が原因で本当に失敗することも無いとは言えない訳で。 >>302
ほらなwww
>>303
確率と繋がってんの理解出来ないのはかなり痛いぞ。学歴と年収の相関みたいなもんだ。 >>306
確率で合ってるよ。学がないと大変だね。 まぁDLLまで持ち出すのはちょっと本末転倒だけど、別に>>299は無様でもないしな
頭の硬いプログラミングの知識の無い老害は放置推奨な かくりつろん【確率論】
確率の一般法則を論ずる数学の一部門。パスカルなどに始まり、数理統計学・誤差論など科学の方法として応用されている。 初カキコです。MT4での自作EA歴半年です。MT4で自作EA動かしているんだけど、業者からサーバーに多大な負荷()がかかっているからEA止めるか取引量減らせという通知が。
そこで質問なんだけど、OrderSendとOrderModifyで、引数に現在値と同じ値を設定して、エラーでERR_NO_RESULT(1)が返る場合はターミナル内でエラー処理されているわけですが、このとき業者サーバーにはメッセージとやらは送られているのでしょうか? >>308
あ、あれか、きみさ、ハードディスクのことを「ハード」とか読んでドヤっちゃう人なんだー
君もきみがいる世界のレベルも知れるよ >>311
引用するのに出典を書くような世界の人でないことはもうわかってるからいいよ >>314
これは失礼
引用元によって変わるような意味合いのモノでないので不要かとおもったのでね
まあ明らかにしてあげると大辞林 第三版
これでも>>301の表現が適切だったとおもってるのかな?w >>318
アンカも打たずにわかりやすい勝利宣言だなw
アンカも省略したのかな?
「安価なしであってるよ。学がないと大変だね。」( ー`дー´)キリッ そこまで追い詰められたいならさ、
「その程度の足回りに気を使えない奴がストラテジーのコア部分を見落とし無しで実装出来るはずがない
っていうのが確率論なんだよね。」
でさ、前段のどこが確率論なのかね?
几帳面な人は知能が高い、的なもの言いだけど、そこまで言うなら相応の「統計的なデータ」でも持ってきたら?w ガイジ、まだ気づいていない模様ww
>>316辺りを読めばわかるんじゃね?w 301=305=ID:spLzg8w30 と思ってたが違うのか??
難しいの〜w 301=305=ID:Wdqs0l9X0
やで
アホすぎて自分で言ってることがわかってないんだよ赦してやれ ID赤くして余程恥ずかしかったのね。失礼。
ま、そんな短絡的じゃやはりまともなストは描けないよね。
これも確率論。理解出来ないみたいだから放置。
この後またID真っ赤に醜態レスまで予測可能 >>326
違うぞガイジw
俺は今日しか書き込んでないw 主張も煽り方も同じアホが二人もいるのも確率論かあ
深いねぇ な、統計通りアホが真っ赤にして書き込みしてきたろ?
典型的なカモだわ 注文時に利確とストップ込みの注文を作ってるんだけど
その幅を変えてもバックテスト全然変わらんなあ…
どこか間違ってるのかな? mt4のEAを購入したんですがアラーム設定するとパソコンではなりますが、スマホでプッシュ通知ができません。
プッシュ通知のテストはできます。
他人の作成したEAはスマホ通知無理なんですか?
どうにかしてスマホに通知させたいです・・ そういえば最近、iPhoneにPC-MT4からの通知は来るが、iPhone-MT4の「チャットとメッセージ」に表示されなくなったな 最近起こったフラッシュクラッシュのことでお聞きします。
チャートを眺めていると、あの時間帯の5分足が何本も抜けているのですが
そういうときにClose〔1〕とかOpen〔0〕とか最新の足のデータを利用
するEA等はどのようになるんでしょうか?
足が消滅してレートがフリーズして再出現したときの最初の足を根拠に
計算するんでしょうか? うわぁああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああ
逝ったぁあああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああ
全部売ったぁああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああ >>343
そんなのこいつらが考慮してるけねーだろwww 作ってる奴が考慮しててもあの瞬間的な値動きじゃ
業者の鯖がまともに反応してくれ無さそうだな 1通貨ペア毎にMN1からM30までの6枚のチャートを組にして1画面とし、画面を切り替えて各通貨ペアーの
状況を見るようにしています。画面の切り替えは、Ctrl+F5とShift+F5で行います。
画面切り替えに1秒強待たされます。もっとサクサク変わって欲しいのですが何が原因でしょうか。
表示に内容は、ローソク足、MA3本、ボリンジャーバンドの±3σ、MACDぐらいで大して負荷にはならないと思うのですが。
PCの総合エクスペリエンスインデックスは7.5です。
グラフィックッスは7.9なので問題ありません。
CPU(i5, 3.2GHz)が7.5ですが、何か別に問題があるような気がするのですが。同じような経験のある方よろしく。 そんなもんでしょ
瞑想でもして1秒くらい余裕で待てる精神を手に入れるのじゃ そんなもんですかね〜
何かありそうな気がしてならないんですが。
精神論は最後の手段ということでよろしく(汗) >>350
有難うございます。
500000から500にしてみました。
こころなしか1秒程度に短縮したように感じます。
28通貨ペアーを見ますので、もう少しサクサク動いてもらいところなんですが・・・ タスクマネージャーのグラフで
どこかの項目に負荷が掛かっていないか見れば良いんじゃないか 初心者では無いけどお聞きしたい‼︎
以前、ヒストリーデータを使ってトレードの練習が出来るEAかな?を持ってたんだけど、どっかいっちゃって同じもの、あるいは同じ事が出来るものを探しています。
前に持っていたものはインジも通常チャートのように表示でき、TPやSLも設定可能、好きなところで止めて仕掛ける事が出来るもので無料だったと記憶しています。
何かご存知の方がおられたらよろしくご紹介下さい。 みなさん、お休みのところすみません。
iStdDevOnArray
iMAOnArray
をEAに組み込みたいのですが
どのようにしたらよいのでしょうか?
Indicateの場合
double ATR1[i] = iATR (NULL,0,RSIPeriod ,i+1);
double dev1 [i] = iStdDevOnArray(ATR1[i],0,BandPeriod,0,MODE_SMA,i+1);
とやれば、解決するのですが
EAだと
double ATR1 = iATR (NULL,0,RSIPeriod ,0+1);
double dev1 = iStdDevOnArray(ATR1,0,BandPeriod,0,MODE_SMA,0+1);
iStdDevOnArray(ATR1 ←
と配列にできないのでどうしたらよいのかわかりません
どなたか教えてくださいませ >>340
同じく
改善した?地味に困るんだよな〜 >>358
改善していない。iPhone-MT4がBuild 1171に上がったから直ると思ったが直らなかった。
PC-MT4の方はBuild 1170でもBuild 1090でもiPhone側の症状は変わらないから、iPhone側の問題だと思うんだが トレードの結果がチャート上に分かりやすく残るように、buyやsellの時にローソク足の近くに矢印が出る
インジをIndexBufferで作りました。オブジェクトはあまり慣れていないので。
うまく表示出来ましたが、チャートのタイムフレームを一時的に変えて戻ってみると(H1を一時的にH4に
した後でもとのH1に戻る等)矢印が消えています。
これを防ぐ方法がわかりません。なにか基本的な設定が抜けているような気がするのですが。 普通に作ればそんなことにはならない
つまり、基本が抜けてる >>360
消えたときに、チャート画面から「表示中のライン等のリスト」を見てリストにあれば、オブジェクトの時間またはプライスの指定が上手くいってない可能性がある。
リストになければ、ObjectDeleteがおかしな位置にある可能性がある。
あとはオブジェクト名が重複しているとか。 >>362
オブジェクトではなくIndexBufferを使ったので、「表示中のライン等のリスト」には最初から出てこないようです。 mt4って、決済の時、OCO注文しか出来ないの?
逆指値決済を入れようとしたら、指値決済注文も要求されるんだけど… >>359
レスサンクス。今朝iOSアプリのアップデートに気づいてやってみたけど、改善されるかな?
>>364
片方だけもできるはずだよ
空白にしとけば >>360
あるあるは取引履歴を表示してないぐらいだな
それか、エキスパートタブにエラー内容が出てるか バックテストの最大ドローダウンの金額って
含み損も考慮してるの? >>365
今やってみたら、出来ました
ありがとうございました。 一時間毎にHiMacroEXのマクロデータを実行させるインジケータを走らせているのですが、最初は調子良いのに暫くすると
stack damaged, check DLL function callエラーが出て止まってしまいます
解決法を教えてください
int h;
#import "shell32.dll"
int ShellExecuteW(int hwnd, string lpOperation, string lpFile, string lpParameters, string lpDirectory, int nShowCmd);
#import
int start()
{
if(h!=Hour() && Minute()>1)
{
ShellExecuteW(NULL, "open","D:\\Misc\\FX\\HiMacroEx\\Macro\\Reset.hmc", NULL, NULL, 1);
h=Hour();
}
return 0;
} shellexecutewでググったら、戻り値をint型の変数に格納するとエラー出ないとあった。
このエラーが該当するか知らんが試してみた?
それはそうと、int hに値を入れずに比較で使ってるのが気になる… インジ走らせた瞬間にマクロ動いちゃうけど気にしない
なぜかinitの所でh=Hour()やっても0が入っちゃうし
戻り値か。。よく分からないけど試してみます 修正して走らせてますが、エラーになるタイミングがランダムなので1日回してみないと何とも。。 昔同じ問題あったね
またMT4がバグってんじゃねーの? MQL5じゃなくて、MT4でコピートレードできるオススメのソフトあれば教えてください。 >>369
deinitでオーダー通らないってやつのdll書いてるんだけど、そのエラー出たわw
多分だけど、ShellExecute実行(*1)→*1実行中→ShellExecute実行(*2)→*2実行中
→*1終了→エラー、だと思う
WaitForSingleObjectで終了を待ってやるかCreateProcessで置き換えると解決できる
と思う すいません、チャートの時間軸の日本時間と時差のない
MT4サーバのFX会社をご存知でしたら教えて下さい あ、駄目だわ
エラーメッセージは出なくなったけどマクロ呼び出しに失敗してる
インジをチャートにぶっこんだ直後だけはマクロ動くし、if文内でPrintで文字出力させたら毎時表示されてるからインジが止まってる訳でもない
>>375
マクロって言ってもワンクリック0.1秒内で終わる動作だけだけどDLL占有したままになってるって事でしょうか
WaitForSingleObjectもCreateProcess使ったこと無いのでよく分からないけどやってみます >>375
起動するものを例えばcmd.exeに変えて再現するか確認してみ
再現するならここにうpすれば見てやる >>378
struct PROCESS_INFORMATION { int hProcess; int hThread; int dwProcessId; int dwThreadId; };
struct STARTUPINFO
{ int cb; int lpReserved; string lpDesktop; string lpTitle; int dwX; int dwY; int dwXSize; int dwYSize;
int dwXCountChars; int dwYCountChars; int dwFillAttribute; int dwFlags; short wShowWindow;
short cbReserved2; int lpReserved2; int hStdInput; int hStdOutput; int hStdError;
};
#import "kernel32.dll"
bool CreateProcessW(string lpApplicationName, string lpCommandLine, int lpProcessAttributes, int lpThreadAttributes,
bool bInheritHandles, int dwCreationFlags, int lpEnvironment, string lpCurrentDirectory, STARTUPINFO& lpStartupInfo,
PROCESS_INFORMATION& lpProcessInformation);
bool CloseHandle(int hObject); int WaitForSingleObject(int hHandle, int dwMilliseconds);
#import
void OnChartEvent(const int id, const long &lparam, const double &dparam, const string &sparam)
{
if (id == CHARTEVENT_KEYDOWN) if (sparam == "32")
{
STARTUPINFO si = { sizeof(STARTUPINFO) }; PROCESS_INFORMATION pi;
CreateProcessW(NULL, "C:\\Windows\\notepad.exe d:\\test.txt", NULL, NULL, false, 0, NULL, NULL, si, pi);
CloseHandle(pi.hThread); WaitForSingleObject(pi.hProcess, -1); CloseHandle(pi.hProcess);
}
}
長文貼れないっぽいから圧縮してるけどw
notepadのとこを適切に書き換えて試してみて、多分解決する
ちなみに上記コードは、インジのソースに貼り付けてコンパイル実行後
チャートにフォーカスがある状態でキーボードのDキーを押すとノートパッドが起動する >>382
土曜日以前は>>369の状態で正常に動いてて、その後やった事といえばWindowsアップデートぐらいだからそれでぶっ壊れたかと思って
MT4再インストールして動かしてみてもやっぱり初回しかマクロ反応してくれない
何となくでint型の変数にしてた部分を元に戻したら正常に動き始めた
何だったんだw >>384
そうやって原因を追究しないから成長もしないんだよ アプリ版(iPhone )MT4が動かなくなったのですが、どうやったら動くようになりますか? >>388
レスありがとうございます。
アプリ版は、土日は取引できないのですか?
とりあえず月曜日まで待ってみますね。 >>390
すみません。FX初心者で知りませんでした。
調べたら土日は取引してないのですね。
もっと勉強します。
ありがとうございました。 MT4にヒストリカルデータを入れて過去チャートを見ているのですが、
少し経つと今日のチャートまで飛ばされます
飛ばされずに過去チャートを見る方法などありますでしょうか? MT4の上から2段目のアイコンが並んでるとこ右から5番目のボタンを押す ■ このスレッドは過去ログ倉庫に格納されています