Minggu, 28 Oktober 2012

Step marty 0.01 namun lot tak terjadi martiyem

ini khusus untuk lot awal = 0.01, walau ada exp = 2, lot selanjutnya tetap sama
klu lot awal dimulai 0.02, maka lot marti selanjutnya berjalan semsetinya sesuai dengan perkalian exp nya

masalah :
http://indo.mt5.com/showthread.php?1793-GRATIS-Profitable-EA-BHCM-!/page38

maaf nih agan semua , sy mau tanya
ane pasang multyply nya =1 
kok OP selanjutnya malah naik sendiri lotnya , kira2 salahnya apa y



terlihat walau multiply = 1, namun lot naik 0.01

jawab :
Coba dilihat pada bagian yang ini....

LotBuy = MathMax(Multiply*OrderLots(),OrderLots()+lotstep);
LotSell = MathMax(Multiply*OrderLots(),OrderLots()+lotstep);


MathMax = Menampilkan nilai tertinggi.
lotstep = MarketInfo(Symbol(), MODE_LOTSTEP); ==>> asumsi jika memakai account demo instaforex MODE_LOTSTEP = 0.01


Jadi kesimpulannya seperti ini

LotBuy/LotSell = MathMax(Multiply*OrderLots(),OrderLots()+lotstep)
LotBuy/LotSell = MathMax(1*0.1,0.1+0.01) 
LotBuy/LotSell = MathMax(0.1,0.11)
LotBuy/LotSell = 0.11


Kalau mau tidak bertambah lotnya bisa dicoba dihilangkan "+lotstep" nya..... 

ganti semua ini :
Code:
LotBuy      = MathMax(Multiply*OrderLots(),OrderLots()+lotstep);
LotBuy = MathMax(LotBuy, minlot);
dengan ini :
Code:
LotBuy      = MathMax(Multiply*OrderLots(),minlot);
--------------
@iniangga & hermit88
Betul bagian itu yang diubah, maaf kemarin mo reply blom sempet masih sibuk.
Dan itu tidak menyalahi konsep Martingale, karena emang sebenarnya itu kode aslinya dulu ya saya bikin seperti itu 
Lalu kenapa saya tambahkan lotstep?
Kalo menyimak di post2 depan, pasti tahu sejarahnya. Dulu ada yang coba penambahan lot-nya ngga jalan karena menggunakan multiply 1.5
1.5 x0.1 = 0.15
Nah jika lotstep dari broker yang bersangkutan adalah 0.1, maka perhitungan tadi akan menghasilkan tetap 0.1 karena penambahan lot (lotstep) yang diijinkan minimal 0.1
Kalo di Insta lotstep=0.01 jadi no problemo 
Ok, kiranya masalah ini cukup jelas. Jika ada yang kurang sreg, sampaikan saja...
Saya sangat berterima kasih kepada iniangga & hermit88 karena bersedia membantu menjelaskan coding-nya. Karena kebanyakan orang males belajar, maunya langsung dapet instan hehe..  
Belajar MQL ngga ada ruginya, terutama jika setiap hari MT4 jadi "santapan" sehari-hari, minimal bisa edit2 indi/EA dikit2 khan lumayan.

--------------------------
Masalah saya sdh ada exp namun lot tidak exponential..

tambahkan perintah :

di input :

double gd_1=1;


void SetDigits() {
   if (Digits == 5 || Digits == 3) gd_160 = 10;
   if(MarketInfo(Symbol(),MODE_MINLOT) == 0.01) gd_1 = 2;
}



di perintah order :

if (OrderSend(Symbol(), OP_SELLSTOP, NormalizeDouble(LotsExponential * Lots, gd_1), NormalizeDouble(ld_8 - KillZone * Point * gd_160, Digits), Slippage, l_price_24, l_price_32, gs_007_148, Magic_Number, 0, Red) == -1) {
               l_error_0 = GetLastError();

Tidak ada komentar:

Posting Komentar