Ticaret fırsatlarını kaçırıyorsunuz:
- Ücretsiz ticaret uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
//+------------------------------------------------------------------+
//| Stepper.mq4 |
//| doshur |
//| www.doshur.com |
//+------------------------------------------------------------------+
#property copyright "doshur"
#property link "www.doshur.com"
extern int TakeProfit = 5;
extern int Range = 20;
extern int Risk = 2;
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
return(0);
}
int deinit()
{
return(0);
}
int start()
{
//----
static bool ToTrade = false;
static bool FirstTrade = true;
double PrevLow = iLow(Symbol(), 0, 1);
double PrevHigh = iHigh(Symbol(), 0, 1);
double PrevRange = (PrevHigh - PrevLow) / Point;
if(NewBar())
{
if(FirstTrade == false)
{
if(PrevRange >= Range)
ToTrade = true;
else
ToTrade = false;
}
else
{
FirstTrade = false;
}
}
if(ToTrade)
{
if(COT(1) < 1)
{
if(Ask > PrevHigh)
OrderSend(Symbol(), OP_BUY, MM(PrevRange, Risk), Ask, 3, PrevLow, Ask + TakeProfit * Point, "Stepper - BUY", 57390, 0, Blue);
}
if(COT(2) < 1)
{
if(Bid < PrevLow)
OrderSend(Symbol(), OP_SELL, MM(PrevRange, Risk), Bid, 3, PrevHigh, Bid - TakeProfit * Point, "Stepper - SELL", 57391, 0, Red);
}
}
//----
return(0);
}
//+------------------------------------------------------------------+
//---- Check Is New Bar
bool NewBar()
{
static datetime PrevBar;
if(PrevBar < Time[0])
{
PrevBar = Time[0];
return(true);
}
else
{
return(false);
}
return(false);
}
//---- Check Open Trades
int COT(int BS)
{
int Buys = 0, Sells = 0;
for(int cnt_COT = 0; cnt_COT < OrdersTotal(); cnt_COT++)
{
OrderSelect(cnt_COT, SELECT_BY_POS, MODE_TRADES);
if(OrderType() == OP_BUY && OrderSymbol() == Symbol()) Buys++;
if(OrderType() == OP_SELL && OrderSymbol() == Symbol()) Sells++;
}
if(BS == 1) return(Buys);
if(BS == 2) return(Sells);
}
//---- Money Management
double MM(int SL, int RK)
{
double rLots = NormalizeDouble(AccountBalance() / 1000 * RK / SL, 1); // Risk ?% of balance
if(rLots < 0.1) rLots = 0.1;
return(rLots);
}
Sorunun ve bazılarının üstesinden gelmek için ilk çalıştırmayı uygulamıştı
kodu test etmemiştim
Lütfen diğer değişiklikleri test edin ve listeleyin
is there away where we can modify the stop loss to so 15 or 20 instead of the other end of the candle?
crazfoto 2008.12.02 08:27 stop loss'u mumun diğer ucu yerine 15 veya 20 olarak değiştirebileceğimiz bir yer var mı?
EVET. Bu mümkün.
Bu 2 saatlik ortalama için mi? veya 30min'in başka bir versiyonu mu?
2 saatlik ortalama ise, dün herhangi bir işlem gerçekleştirmedi.
Bu 2 saatlik ortalama için mi? veya 30min'in başka bir versiyonu mu?
2 saatlik ortalama ise, dün herhangi bir işlem gerçekleştirmedi.
kodlarımı mı kastediyorsun?
İstediğiniz gibi 30 dakika uygulanır.
ah. benim hatam. şimdi test edeceğim.
Bu konuda bana yardımcı olduğunuz için ÇOK TEŞEKKÜR EDERİM. 4 saatlik grafikte zekice oynadım. 4 saatlik bir grafikte durağı 15 veya 20 pip olarak değiştirirsem sonuçların iyi olacağını düşünüyorum. ve ne alıştım.
ayy
Girdikten sonra devre dışı bırakmayı unutuyorum.
kodu değiştirmeme izin ver