【MT4/5】Meta Trader初心者専用55【EA素人】 [無断転載禁止]©2ch.net
レス数が1000を超えています。これ以上書き込みはできません。
ku-chartみたいな他通貨を呼び出すインジケーターが、バックテストで動かなくて困ってるんですが、何かいい方法はありませんか?
ファイル関数系とdll系は苦手でして。
MT5では動くなら、今から勉強するんですけど。。 MT5では普通に動く。MT4では一工夫いるがやり方はググればすぐ見つかる。 あー、テクニカル指標の計算を自分でプログラム書かないといけないからめんどくさいね。難しいわ。 983です。
動かないですね。。
ヴィジュアルチャートに貼り付けても、呼び出した時だけ表示されて、その後は止まってしまいます。。
mt5を頑張って勉強しようかな 最新足がダメなだけで確定足使う分には別ペア参照でも問題ないと思うけど
最新足がテストのペアしか更新されない 恥を承知で自作関数を晒してみる。これをku-chartにコピペして
iMA → iMA_Custom に書き換えれはテスターでも動くはず。
double iMA_Custom(string symbol, int timeframe, int maperiod, int mashift, int mamethod, int price, int shift)
{
double ret = 0;
if(IsTesting())
{
datetime dt = iTime(_Symbol, timeframe, shift);
int collection = 1;
if(mamethod == MODE_EMA || mamethod == MODE_SMMA) collection = 16;
if(Bars(symbol, timeframe) - iBarShift(symbol, timeframe, dt, false) < maperiod * collection) return(0);
double ocBuf[];
ArrayResize(ocBuf, maperiod * collection);
if(price == PRICE_OPEN && CopyOpen(symbol, timeframe, iBarShift(symbol,timeframe,dt,false) + mashift, maperiod * collection, ocBuf) < 0) return(0);
if(price == PRICE_HIGH && CopyHigh(symbol, timeframe, iBarShift(symbol,timeframe,dt,false) + mashift, maperiod * collection, ocBuf) < 0) return(0);
if(price == PRICE_LOW && CopyLow(symbol, timeframe, iBarShift(symbol,timeframe,dt,false) + mashift, maperiod * collection, ocBuf) < 0) return(0);
if(price == PRICE_CLOSE && CopyClose(symbol, timeframe, iBarShift(symbol,timeframe,dt,false) + mashift, maperiod * collection, ocBuf) < 0) return(0);
ret = iMAOnArray(ocBuf, 0, ArrayRange(ocBuf, 0) - maperiod * (collection - 1), 0, mamethod, 0);
ArrayFree(ocBuf);
}else{
ret = iMA(symbol,timeframe,maperiod,mashift,mamethod,price,shift);
}
return(ret);
} バグっていうか少し誤差があるみたい。
iMA(…) - iMA_Custom(…) が0にならないわ。 >>992
ちょっと間違ってたので訂正します。たぶんこれでいけるかと。
double iMA_Custom(string symbol, int timeframe, int maperiod, int mashift, int mamethod, int price, int shift)
{
double ret = 0;
if(IsTesting())
{
int collection = 1;
if(mamethod == MODE_EMA || mamethod == MODE_SMMA) collection = 16;
if(Bars(symbol, timeframe) - shift < maperiod * collection) return(0);
double ocBuf[];
ArrayResize(ocBuf, maperiod * collection);
if(price == PRICE_OPEN && CopyOpen(symbol, timeframe, shift + mashift, maperiod * collection, ocBuf) < 0) return(0);
if(price == PRICE_HIGH && CopyHigh(symbol, timeframe, shift + mashift, maperiod * collection, ocBuf) < 0) return(0);
if(price == PRICE_LOW && CopyLow(symbol, timeframe, shift + mashift, maperiod * collection, ocBuf) < 0) return(0);
if(price == PRICE_CLOSE && CopyClose(symbol, timeframe, shift, maperiod * collection, ocBuf) < 0) return(0);
ret = iMAOnArray(ocBuf, 0, ArrayRange(ocBuf, 0) - maperiod * (collection - 1), 0, mamethod, 0);
ArrayFree(ocBuf);
}else{
ret = iMA(symbol,timeframe,maperiod,mashift,mamethod,price,shift);
}
return(ret);
} うああ、PRICE_CLOSEのとこ訂正しわすれてた。↓でお願いします。
if(price == PRICE_CLOSE && CopyClose(symbol, timeframe, shift + mashift, maperiod * collection, ocBuf) < 0) return(0); >>997
5つ全部だよ。
バックテストしてみればどれだけすごいかわかる。 >>998
通貨指定と勝率、plラインが典型的なあれでワロタ。ただのアフィ目的は消えてくれるかな? >>999
デモ口座で稼働してコピーツールで取引口座で売買するんだよ。
ibに関しては自分でいい所見つけてくれw このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 208日 16時間 54分 59秒 レス数が1000を超えています。これ以上書き込みはできません。