X



【MT4/5】Meta Trader初心者専用57【EA素人】
■ このスレッドは過去ログ倉庫に格納されています
0237名無しさん@お金いっぱい。
垢版 |
2019/01/06(日) 22:31:56.96ID:xsyr264b0
>>236
公式を見てきました。ないですね。
ありがとうございます。
0245名無しさん@お金いっぱい。
垢版 |
2019/01/08(火) 06:29:32.83ID:mcWgCLGi0
座標ではなく価格位置で固定するOBJ_ARROWみたいなオブジェクトから、
マウスドラックで移動後に価格位置を取得する方法ないでしょうか?
このタイプはOBJPROP_YDISTANCEで座標位置も戻り値出ないし、
表示中のライン等やデータウインドウにも情報が出ないのでObjectDescriptionでも
拾えないです。
分かる人いますか?
0247名無しさん@お金いっぱい。
垢版 |
2019/01/08(火) 09:02:52.59ID:mcWgCLGi0
できました
ObjectGetInteger()の方でずっとやってたので
古いObjectGet()でやったら出来ました
有難うございました
0250名無しさん@お金いっぱい。
垢版 |
2019/01/10(木) 17:10:41.90ID:ZPrb3Bg00
はじめまして、こんにちは

MT4のMetaEditorにて
ボタンを押すと通貨が変わるなどの動作をするプログラムをつくり
ボタンやラベルを作成して、ボタンをおす動作確認をしているのですが
定期的に、動かなくなります。

エラーを見るとこのようになっています
どうやら、
EURGBPを開いた後に、CADJPYなど違う通貨にするさいにエラーがでるみたいなのですが
2019.01.10 17:04:28.480 testbotton8 EURGBP,H4: 25 objects of type CArrayInt left
2019.01.10 17:04:28.480 testbotton8 EURGBP,H4: 25 undeleted objects left
これはどういう意味でしょうか?
どのようにしたら、解決するのでしょうか?
ぜひともご教授ください
MT4 ver1170
0251名無しさん@お金いっぱい。
垢版 |
2019/01/10(木) 17:43:00.35ID:o/Ud/EX50
そのエラー自体はnewしたオブジェクトをdeleteしてないってことじゃないの
通貨変えるとOnDeinit->OnInitと走るから
しかし、そもそもCxxはちょっと前まで通貨変えたり再起動とかするとおかしくなってた気がするけど直ったんかね
0252名無しさん@お金いっぱい。
垢版 |
2019/01/11(金) 19:08:27.91ID:/6baHSbN0
>>251
ありがとうございます。この関数は排除することで解決にしました^^
0253名無しさん@お金いっぱい。
垢版 |
2019/01/11(金) 19:11:20.07ID:/6baHSbN0
もう一つ質問なのですが、

ExpertAdviserにて、何も記述していなくて
@
Ondenit のところにコメント関数を書きます。
void OnDeinit(const int reason)
{Comment("test"); }

A
それでChangePair系のインジケーターを使うと
すごい処理が重たくなります
いろんなChangePairを拾って試したのですが

なぜか、OndenitにObjectDeleteやComment関数など
使うと、すごい処理が重たくなります

なぜでしょうか?バグですかね?
0258名無しさん@お金いっぱい。
垢版 |
2019/01/12(土) 16:58:34.06ID:sr1qneVx0
OrderSendのスリッページを0にしても、指定したレートより不利に約定します。なぜでしょうか?
そういう場合はリクオートさせたいのですが、どうすればいいでしょうか?
0261名無しさん@お金いっぱい。
垢版 |
2019/01/12(土) 17:27:19.50ID:sr1qneVx0
>>259
ありがとうございます
業者はNDDの外為ファイネストですが、今HPを見たら、
「※当社MT4・ZEROは「Market Execution (カウントダウン)」方式のため、スリッページ値が設定されているEAで取引した場合でも、
スリッページの設定は無視されますのでご注意ください。」と書いてありました
0262名無しさん@お金いっぱい。
垢版 |
2019/01/14(月) 21:27:48.07ID:ukAu9Xga0
レートを読み上げる、pricetalkerみたいなのありましたら教えてください。
有料のでもいいですし、サイトでもいいのですが、数年前から使えなくなって困ってます。
レート読み上げって需要無いのですかね?
みなさん、ずっとチャートを眺め続けているのでしょうか???
0265名無しさん@お金いっぱい。
垢版 |
2019/01/15(火) 16:26:49.47ID:VO7BblPh0
誰か教えて下さい!
MT4のチャートで「ロウソク足」ではなく「ラインチャート」にした時、
ラインの色や太さを変えることはできるのでしょうか?
0266名無しさん@お金いっぱい。
垢版 |
2019/01/15(火) 17:06:18.04ID:b/0lON/c0
>>265
期間数1のMAを上から重ねてみたら?
0267名無しさん@お金いっぱい。
垢版 |
2019/01/15(火) 17:10:32.19ID:b/0lON/c0
というか色を変えるだけならプロパティで設定できるな
ラインの色をNoneにして1期間MAを表示すれば点線にもできるな
0269名無しさん@お金いっぱい。
垢版 |
2019/01/15(火) 18:37:21.09ID:xd9kOysc0
>>263
とっても、すごく、ありがとうございます!!!!
ビッグ感謝いたします!!!
0270263
垢版 |
2019/01/15(火) 23:23:59.64ID:zLbAqoeV0
>>269
感謝は修正してくれた人にw
0271名無しさん@お金いっぱい。
垢版 |
2019/01/16(水) 07:11:33.52ID:S4g1Q+D80
ビックカメラ
0272名無しさん@お金いっぱい。
垢版 |
2019/01/16(水) 07:47:02.21ID:oK3ikRVe0
いいってことよ
0273名無しさん@お金いっぱい。
垢版 |
2019/01/16(水) 09:42:47.27ID:8xoHqHwT0
TRYJPYの取り扱いがあってスプがあまり広がらないMT4のデモ口座やってる所を教えてください
今まで試した所
XMはTRYJPYの取り扱いなし
FXTFはhttps://i.imgur.com/fW4SZ20.png
OANDAはスプガバでチャート飛びまくり
0275名無しさん@お金いっぱい。
垢版 |
2019/01/16(水) 19:15:37.77ID:3duPDTL/0
移動平均のゴールデンクロスで
エントリー決済の、パロメーターを調整したら、

2012年からバックテスト回して
pf=2.0になったけど、
ルールが単純すぎるからこれで本当に良いのか怖い。

だいたい、2012年〜いろんな出来事があったけど、6年分もテストする意味があるのだろうか。

統計を独学で学んで、計算通りなら
安定して利益でそうだけど怖い

デモも設定甘いから信用できない。
0276名無しさん@お金いっぱい。
垢版 |
2019/01/16(水) 19:17:37.82ID:3duPDTL/0
>>262
昔、図書館で借りたヘッジファンド密着みたいなDVD借りたけど、
家庭でbgmみたいに、ずっとレートの読み上げされてたけど、
見てるだけで気が狂いそうだったわ。

まだ、携帯も普及してなかったのか
ポケベルみたいなので、レートチェックしてた
0277名無しさん@お金いっぱい。
垢版 |
2019/01/16(水) 19:58:48.67ID:oK3ikRVe0
>>275
期間もそうだがトレード数が重要
6年やっても数百回レベルならカーブフィッティングの可能性が高い
0278名無しさん@お金いっぱい。
垢版 |
2019/01/17(木) 04:51:56.01ID:NcDPMZRm0
>>277
年30回くらいだったかな。pc開くのめんどい。3〜4日にいっぺんくらいエントリーして、翌週にはしまうくらいの頻度。×6年分

バカのなんとかみたいに、統計の本に書いてあることを真似て計算してみて、
本数が少ないから、様子見が必要だけど利益が出そうではある。

質問じゃないのはわかってるよ。ただ、不安だから書いてるだけ。

前回は、カーブフィッティングで見事にやられたから
トラウマなんだよね。

前回は、停止したタイミングもあれで良かったのか確信が持てなかったけど。
0279名無しさん@お金いっぱい。
垢版 |
2019/01/17(木) 10:02:57.31ID:FKjDmNPL0
MT4に対応していないFX業者で自動で取引するのにAlt+AやAlt+Bなどのキー操作を出力したいのですが、MT4のみで可能でしょうか?
0282名無しさん@お金いっぱい。
垢版 |
2019/01/17(木) 12:23:04.91ID:FvyJxCnQ0
バックテストの結果をcsvかexcelで落としたいのですが、できますか?
現状、レポートをダウンロードして、
webブラウザで開いて、コピーして、
excelを立ち上げて
貼り付けて、グラフを消して

大変手間です。
0284名無しさん@お金いっぱい。
垢版 |
2019/01/17(木) 13:31:33.73ID:T59ffSjg0
>>282
自分の場合は、
OnDeinitに、テストモードの場合、
FileOpenとFileWriteで必要な項目を書き出すようにした。

その部分のコードだけ独立させてスクリプトも作った。
0286名無しさん@お金いっぱい。
垢版 |
2019/01/20(日) 17:01:22.76ID:eBgWVH3C0
次のようなことを考えていますが難しそうで手に負えそうもありません。
だれかヒントだけでも、あるいはそんなインジはすでにどこどこにあるよと教えてくれると有り難いです。
よろしくお願いします。
-------
ドル円の時間軸の異なる3枚のチャートが表示されているとします。
例えば左から、M30,H1,H4.
このとき、どれかのチャートに十字カーソルを表示して動かしたとき、
他の2枚のチャートにもカーソルが出現して同じ時刻を示すように動く。
--------
0288名無しさん@お金いっぱい。
垢版 |
2019/01/20(日) 17:35:19.29ID:eBgWVH3C0
>>287
たしかにいくつかありました。
そのうち、HT-FXさんのHT Crosshair Syncがピッタリのようです。
もうすこし詳しく見てみます。
こんなに早く解決するとは思いませんでした。
有難うございました。
0289名無しさん@お金いっぱい。
垢版 |
2019/01/21(月) 00:16:26.78ID:/iFjZgJ90
アプリ版のMT5で同ペアの時間足違い分割チャートで片方にライン引いたらもう片方に自動で反映ってできないよね?
0290名無しさん@お金いっぱい。
垢版 |
2019/01/21(月) 12:09:56.30ID:sFNkXM6I0
MT4を終了したときにEAから発注したオーダーをキャンセルしたいのですが、
以下のようにOnDeinit関数の中に処理を入れてもうまく動きませんでした。
どなたか解決策をご存知の方がいればご教示頂きたいです。

コード
=========================================
//+------------------------------------------------------------------+
//| OnDeinit(アンロード)イベント |
//+------------------------------------------------------------------+
/*
void OnDeinit(const int reason) {
string text="";
switch(reason)
{
case REASON_ACCOUNT:
text="Account was changed";
break;
case REASON_CHARTCHANGE:
text="Symbol or timeframe was changed";
break;
case REASON_CHARTCLOSE:
text="Chart was closed";
break;
case REASON_PARAMETERS:
text="Input-parameter was changed";
break;
case REASON_RECOMPILE:
text="Program was recompiled";
break;
case REASON_REMOVE:
text="Program was removed from chart";
break;
case REASON_TEMPLATE:
text="New template was applied to chart";
break;
case REASON_CLOSE:

// 現在アカウントで保有しているポジション数分ループ処理を行う
for ( int i = OrdersTotal()-1 ; i >= 0 ; i--) {
// 注文プールからエントリー中の注文を選択する
if( OrderSelect(i,SELECT_BY_POS,MODE_TRADES) == false) {
break; // 注文選択に失敗したらループ処理終了
}
// 選択した注文の通貨ペア名を取得し、現在チャートの通貨ペア名と一致しているかチェック
// 選択した注文のマジックナンバーを取得し、このEAのマジックナンバーと一致しているかチェック
// 上記の両方の条件に一致した場合のみif文内の処理を行う
if( OrderSymbol() == Symbol() && OrderMagicNumber() == MAGICNUM) {
if (OrderType() == OP_BUYLIMIT || OrderType() == OP_SELLLIMIT){
res = OrderDelete(OrderTicket());
}
}
}
break;
default:text="Another reason";
break;
}
}
0291名無しさん@お金いっぱい。
垢版 |
2019/01/21(月) 13:59:40.61ID:7NHID4Pm0
>>290
そこまでコードあるならデバッグprint入れてどこがおかしいのか調べられるだろ
もう少しどこがおかしいのか絞れ
0292290
垢版 |
2019/01/21(月) 15:34:31.58ID:sFNkXM6I0
>>291
大変失礼しました。

Ondeinit関数の「case REASON_CLOSE:」の条件では
res = OrderDelete(OrderTicket());
の部分が失敗します(resの値が0になります)

それ以外の、例えば「REASON_REMOVE: 」の
条件で同じ処理をすると正しくオーダーが削除されます。

「case REASON_CLOSE:」の条件ではオーダーを削除
する方法が知りたいです。
0294290
垢版 |
2019/01/21(月) 16:31:22.66ID:sFNkXM6I0
>>293
ありがとうございます。
エラーは「02 ERR_COMMON_ERROR」
という謎のエラーでしたが、少し進展したような気がします。
0295名無しさん@お金いっぱい。
垢版 |
2019/01/21(月) 18:07:14.35ID:xOcCASCe0
>>292
多分だけど、REASON_CLOSEでOnDeinitが呼ばれた時点で既にEA
(というより自動売買?)の実行許可フラグが落ちてるのかも?
仕様だとしたら俺も知らんかったわ

俺は一目見てどうせOnDeinitの時間切れだろ?くらいに思ってたがw
仮にそういう仕様だとしたら意外に深い(mqlの範囲内で回避する方法
が思い浮かばない)かも?

dllでサブクラス化してクローズボタンの押下をMT4(メインウィンドウ)
より先にキャッチして、カスタムイベントをpostしてOnEventでキャッチ
してやりた処理をするって手はありそうだけど・・・・・・
大元のウィンドウプロシージャを止めてる状態でpostしてOnEventが
ちゃんと発火するかはやってみないと分かんない
試してみるにしも週末にならないと・・・・・・
そもそも質問者的にdll使用がアリなのかも分からんしねw
0298292
垢版 |
2019/01/21(月) 19:33:48.00ID:sFNkXM6I0
>>295
そういう仕様なら納得です。
OrderTicket()は問題なく取得出来ているのに
OrderDeleteだけが実行できなくて困っていました。
DLLはハードルが高いので別の方法を検討したいと思います。
ありがとうございました。

>>296
ターミナルの×ボタンを押したときは
他のイベントは拾えない様でした。
0299名無しさん@お金いっぱい。
垢版 |
2019/01/21(月) 19:54:41.63ID:0w4LsKSM0
EA止める
オーダーキャンセルのスクリプト実行する
閉じる
でいいんじゃね
カッコ悪いというなら頑張れ
0300名無しさん@お金いっぱい。
垢版 |
2019/01/21(月) 21:55:36.85ID:ECJoODbi0
>>299
俺はプログラマーじゃなくてトレーダーだからそんなこと微塵も気にしないけど、
このスレの住人の多くはプログラマー崩れだろうから、そんなブザマなことはしたくないだろうね
そんなところに時間を使うくらいならもっとストラテジーの研究に時間を使えって思うけどね
0301名無しさん@お金いっぱい。
垢版 |
2019/01/21(月) 22:34:50.72ID:jnAin6nu0
>>300
その程度の足回りに気を使えない奴がストラテジーのコア部分を見落とし無しで実装出来るはずがないっていうのが確率論なんだよね。この後の自分だけは例外って感じの必死レスまで予測可能
0302名無しさん@お金いっぱい。
垢版 |
2019/01/21(月) 22:55:34.68ID:ECJoODbi0
ふうん、やっぱりそこは触れちゃいけない部分だったみたいだね
まあ頑張れよ
0304名無しさん@お金いっぱい。
垢版 |
2019/01/22(火) 00:03:39.60ID:UsdTPFBd0
どっぷりなプログラマーほどプログラムだけでなんとかしようとする。
優秀なSEはプログラムにこだわらず柔軟に解決方法を模索する傾向にあると思う。

は、さておき、そもそもキャンセル完了を確認してからMT4を閉じるべきじゃないかね。
サーバー側や通信不具合が原因で本当に失敗することも無いとは言えない訳で。
0307名無しさん@お金いっぱい。
垢版 |
2019/01/22(火) 02:06:14.09ID:/v+q+nqj0
>>306
馬鹿は放置でヨロ
0310名無しさん@お金いっぱい。
垢版 |
2019/01/22(火) 08:26:53.40ID:EkzKgAUq0
まぁDLLまで持ち出すのはちょっと本末転倒だけど、別に>>299は無様でもないしな
頭の硬いプログラミングの知識の無い老害は放置推奨な
0311名無しさん@お金いっぱい。
垢版 |
2019/01/22(火) 12:22:45.69ID:Wdqs0l9X0
かくりつろん【確率論】
確率の一般法則を論ずる数学の一部門。パスカルなどに始まり、数理統計学・誤差論など科学の方法として応用されている。
0312名無しさん@お金いっぱい。
垢版 |
2019/01/22(火) 12:56:30.67ID:fQHNLTT70
初カキコです。MT4での自作EA歴半年です。MT4で自作EA動かしているんだけど、業者からサーバーに多大な負荷()がかかっているからEA止めるか取引量減らせという通知が。
そこで質問なんだけど、OrderSendとOrderModifyで、引数に現在値と同じ値を設定して、エラーでERR_NO_RESULT(1)が返る場合はターミナル内でエラー処理されているわけですが、このとき業者サーバーにはメッセージとやらは送られているのでしょうか?
0313名無しさん@お金いっぱい。
垢版 |
2019/01/22(火) 13:43:13.01ID:yxb/pXCi0
>>308
あ、あれか、きみさ、ハードディスクのことを「ハード」とか読んでドヤっちゃう人なんだー
君もきみがいる世界のレベルも知れるよ
0316名無しさん@お金いっぱい。
垢版 |
2019/01/22(火) 14:25:10.95ID:Wdqs0l9X0
>>314
これは失礼
引用元によって変わるような意味合いのモノでないので不要かとおもったのでね
まあ明らかにしてあげると大辞林 第三版

これでも>>301の表現が適切だったとおもってるのかな?w
0319名無しさん@お金いっぱい。
垢版 |
2019/01/22(火) 15:41:24.13ID:spLzg8w30
>>318
アンカも打たずにわかりやすい勝利宣言だなw
アンカも省略したのかな?

「安価なしであってるよ。学がないと大変だね。」( ー`дー´)キリッ
0321名無しさん@お金いっぱい。
垢版 |
2019/01/22(火) 17:16:26.43ID:spLzg8w30
そこまで追い詰められたいならさ、

「その程度の足回りに気を使えない奴がストラテジーのコア部分を見落とし無しで実装出来るはずがない
っていうのが確率論なんだよね。」

でさ、前段のどこが確率論なのかね?

几帳面な人は知能が高い、的なもの言いだけど、そこまで言うなら相応の「統計的なデータ」でも持ってきたら?w
0327名無しさん@お金いっぱい。
垢版 |
2019/01/22(火) 20:02:32.08ID:kHcPnBpE0
ID赤くして余程恥ずかしかったのね。失礼。
ま、そんな短絡的じゃやはりまともなストは描けないよね。
これも確率論。理解出来ないみたいだから放置。
この後またID真っ赤に醜態レスまで予測可能
0335名無しさん@お金いっぱい。
垢版 |
2019/01/23(水) 08:01:40.19ID:a3pR7Osq0
確率論ww
0336名無しさん@お金いっぱい。
垢版 |
2019/01/23(水) 19:47:02.89ID:v9oTFq2U0
注文時に利確とストップ込みの注文を作ってるんだけど
その幅を変えてもバックテスト全然変わらんなあ…
どこか間違ってるのかな?
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況