X



【MT4/5】Meta Trader初心者専用56【EA素人】
■ このスレッドは過去ログ倉庫に格納されています
0002名無しさん@お金いっぱい。
垢版 |
2018/03/10(土) 09:47:12.79ID:gBkxnM/R0
USDJPYの1分足スキャルピング型EA(自動売買ツール)とサインツールを開発・公開しております。
興味がありましたら見てみてください。
http://dcfvghbjk098.officeblog.jp/archives/7206121.html
0003名無しさん@お金いっぱい。
垢版 |
2018/03/11(日) 05:35:53.03ID:VaAOgOw10
おはようございます!

EAを使う際、マジックナンバーが重複しないように気を付けてとよく言われますが
例えばですが、同じPC内で

MT4:A ブローカー⇒オアンダ EA⇒○○○(Bと同じEA) マジックナンバー⇒555(Bと同じマジックナンバー)

MT4:B ブローカー⇒楽天証券 EA⇒○○○(Aと同じEA) マジックナンバー⇒555(Aと同じマジックナンバー)

にしていたとします。

マジックナンバーを両者共に同じにしていることによって
支障が出る可能性はあるものなのでしょうか。

それとも、MT4もブローカーも違う場合は
マジックナンバーが同一でも問題ありませんでしょうか。

同じPC内ですと、MT4を分けたとしても
根本のところでは、MT4は繋がっていたりするので(?)
(上記の場合)マジックナンバーは変えた方が
いいということはあるのでしょうか。

おしえてたもれ!
00103
垢版 |
2018/03/12(月) 10:44:55.55ID:6QnFpi0Y0
皆さま回答ありがとうございました!
0012名無しさん@お金いっぱい。
垢版 |
2018/03/16(金) 02:01:49.27ID:824dR8+T0
FXDDからダウンロードしてきた過去データ2005~を読み込もうとしているのですが、
デスクトップクラウド上のMT4だけ、読み込むことができません。


ヒストリーセンター>USDJPY1分足を選択ー>インポート>.hstファイルを選択すると
ポップアップには読み込まれるのですが、OKを押してもヒストリーセンターに読み込まれません。

別のローカルマシンでやるとできるのですが、
お名前.comのデスクトップクラウド for FX のメモリ1GBのプランです。

メモリ不足などということも考えられますでしょうか?
0013名無しさん@お金いっぱい。
垢版 |
2018/03/17(土) 23:26:45.92ID:hZWwm9jn0
クラスのメンバ配列にClose[]配列みたいな時系列配列を作ることってできないんだっけ?

たとえば、hoge[]って配列をメンバに持つクラスを作成し、
hoge[0]に適当な値を放り込んだらあとは放置プレーしていても
バーが更新されるたびにhoge[0]に放り込んだ値がhoge[1]に、
さらにバーが更新されればhoge[1]の値がhoge[2]に勝手に移動していってくれる
便利な配列って作れないのかな?

真面目に実装しようとすると新規バーが出現したことを監視・検知したら
for文でぶん回してhoge[]配列の全要素を一つインクリメントしていくという
膨大な操作が必要になるわけだが・・・

こういうのを全自動でやってくれる機能があったらうれしい
0017名無しさん@お金いっぱい。
垢版 |
2018/03/18(日) 11:19:16.48ID:wLxFhuhL0
>>16
class Ctest
{
public: int test[];

void Ctest(){
SetIndexBuffer(0, test);
ArraySetAsSeries(test, true);
}
~Ctest(){}
}

int OnInit()
{
Ctest *ctest = new Ctest();
return(INIT_SUCCEEDED);
}

void OnTick()
{
ctest.test[0] = 0;
}

たとえばこんなプログラムをEAでバックテストしてみると
コンパイルはうまくいくけど実際にバックテストさせると

Teseting pass stopped due to a critical error in the EA
array out of range in 'Ctest.mp4'

って言われて止まっちゃう。
ArraySizeでtest[]のサイズを調べてみたけどずっと0のままだから
そりゃ止まるのは当然よね

SetIndexBuffer
ArraySetAsSeries
をかけた配列ってバーが更新されるたびに配列サイズが1個ずつ
自動的に増えていくものと思ってたけど違うんだっけ?
0018名無しさん@お金いっぱい。
垢版 |
2018/03/18(日) 11:25:26.65ID:DBMZepvn0
そもそもEAでは使えない
EAで使いたいなら自力でやるんだな
MQL的にはインジ作ってiCustomで呼べと
0019名無しさん@お金いっぱい。
垢版 |
2018/03/18(日) 11:37:18.57ID:DBMZepvn0
自力でやるには
新規データはケツに追加、バッファが足りなくなったらresize
operator[]でケツからアクセス
すればいい SetIndexBufferしたバッファでやってることと同じ
0020名無しさん@お金いっぱい。
垢版 |
2018/03/18(日) 12:15:30.36ID:wLxFhuhL0
dd
EAじゃできないのね

配列の話題が出たついでに聞いておきたいんだけど

test[] = {1, 2, 3, 4}

みたいな配列のうち、先頭から3番目の"3"をピンポイントで削除して

test[] = {1, 2, 4}

みたいに前に詰めるって感じのことはMQL4にはできない?

似たようなことやりたかったら配列処理の専門クラスを作って
そこでいろいろ処理させる以外に方法無い?

C++にはvectorみたいな配列を扱う標準テンプレートライブラリがあって
重宝したんだけどMQL4はそういうの自分で定義しなきゃならないかな、と思って
0022名無しさん@お金いっぱい。
垢版 |
2018/03/18(日) 13:32:12.09ID:OSoA0x+d0
>>20
mt5の標準ライブラリにジェネリックデータコレクションてのが追加されてる。
あんまり出来がよくない(ぶっちゃけ単に好みじゃないw)けど、一旦mt5をインストールして
ソースのあるフォルダ(include/generic)以下をmt4にコピーすれば使うことはできる。
0024名無しさん@お金いっぱい。
垢版 |
2018/03/19(月) 09:00:16.65ID:pTHU8nQR0
初心者的な質問ですまん。
MT4やMT5のチャートって随時更新されるけど、止める事って出来るのでしょうか?
過去のチャートを見ようとスライドさせてる最中に更新されて現時刻に戻ってしまうんですが、一時停止とかないのかな?
0026名無しさん@お金いっぱい。
垢版 |
2018/03/24(土) 08:25:51.37ID:AjLvT7Tv0
mt4 Build 1090を使っています
ストラテジーテスタで複数チャートを同期して表示をしたいです
Period_Converter_Optの最新版かと思われるものを探しましたがどれもうまくいきません
https://gist.github.com/micclly/9451216
ダウングレードも試みましたが、950ではうまくいきませんでした
既存のスクリプトにあるPeriodConveterも試しました
オフラインチャートには作成されますが、開いてみるとデータが最新のまで作成されておりストラテジーテスタには利用できませんでした
どなたか解決法知ってる方教えて下さい><
0027名無しさん@お金いっぱい。
垢版 |
2018/03/24(土) 14:11:23.70ID:5EtzFFmK0
>>26
何がやりたいのか、イマイチ分からない
複数の時間足のバックテストの結果チャートを、並べて表示したいの?
0028名無しさん@お金いっぱい。
垢版 |
2018/03/25(日) 18:00:09.50ID:vDng2mq10
ポインタを使ってクラスのオブジェクトを配列に格納してる。

Ctest *obj[];
ArrayResize(obj, 3);
obj[0] = new Ctest();
obj[1] = new Ctest();
obj[2] = new Ctest();

この配列のうち真ん中のobj[1]が不要になったから削除して前に詰めようと思った。

obj[0]
obj[1]

こういうときどうすればいいと思う?
delete(obj[1])
を実行しただけじゃobj[1]が消えるだけでobj[2]が前に詰めてくれない。
ArrayCopyを使ってつなぎ直すのもいいかなと思ったけど、
> 構造体配列のコピーを禁止する制御が入っているようですがポインタに対しても一律禁止になったようです。
http://mt4program.blogspot.jp/2017/05/mt4-build-1080.html
ポインタ配列に対してはこの方法は使えないっぽい。
0029名無しさん@お金いっぱい。
垢版 |
2018/03/25(日) 22:13:21.85ID:Sce6ULuf0
ポインタのコピーはできるだろ
しかし、そのブログもひどいね ひどいどころかひどすぎる
たった数行のソースに2つもtypoしてるし、そのエラーメッセージも違ってる
まともに答える気すら萎える
0030名無しさん@お金いっぱい。
垢版 |
2018/03/27(火) 19:14:49.31ID:P6zv3GPK0
>>28
ジェネリックデータコレクションのCArrayListがほぼほぼそのように動作する。
どうやってんだろ?って思ったら単にコピーして詰めてるだけだったけど、、、、
CArrayList<hoge*> array;とすればオブジェクトポインタも扱える。
■ このスレッドは過去ログ倉庫に格納されています

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