Jump to content
Co nového? Mé kurzy
Komunita:
Diskuze Sledované příspěvky Žebříčky

Doporučené příspěvky

Odesláno

Dobrý den.
Měl bych dotázek.Máte někdo zkušenost s tím,že naprogramujete AOS v MT4 a on Vám nebere všechny signály?
I přes splněné podmínky?Pokud dám třeba jen takto jednoduchý prográmek tak nefunguje přeně,některé vstupy prostě vynechá a já nevím proč.Měl jsem ho puštěnej 3 dny a několik splněných podmínek vynechal a neudělal obchod.

Pokud někdo tuší,dejte pls vědět.Díky.



//+------------------------------------------------------------------+
//| 1.mq4 |
//| 1|
//| |
//+------------------------------------------------------------------+
#property copyright "1"
#property link ""
bool NewBar() //////////////////////////////////////////
{
static datetime lastbar = 0;
datetime curbar = Time[0];
if(lastbar!=curbar)
{
lastbar=curbar;
return (true);
}
else
{
return(false);
}
}
//---- input parameters
extern int SL=40;
extern int PT=100;
extern int MA=64;
extern int MAA=8;

//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
//----

//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----

//----
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
//////////////////////////////////////////////////////////////////////

int start()
// int CCT=0;
{
//----
double EMA;
double EMAA;
int ticket,total;
EMA=iMA(Symbol(),0,MA,0,1,6,1);
EMAA=iMA(Symbol(),0,MAA,0,1,6,1);
if (NewBar() == true)
{
if (EMA>=EMAA)
{
if (Low[1]>=EMA)
{

ticket=OrderSend(Symbol(),OP_SELL,0.1,Bid,3,Ask+Point*SL,Ask-Point*PT,"dolu",1,0,Green);
}
}
////////////////////////////////////////////////////////////////////////////////////////

if (EMA {
if (High[1] {
ticket=OrderSend(Symbol(),OP_BUY,0.1,Ask,3,Ask-Point*SL,Ask+Point*PT,"nahoru",1,0,Green);
}
}
}
/////////////////////////////////////////////////////////////////////////////////////////
return(0);
}

  • Odpovědí 583
  • Vytvořeno
  • Poslední

Nejaktivnější diskutující

Nejaktivnější diskutující

Publikované obrázky

Odesláno

Zdravím všechny a zároveň jsem chtěl požádat,zda by mi někdo nepomohl upravit kód ea.Je to jednoduché ea na dvě ma. Potřeboval by jsem do něho vložit trailing stop. Zkoušel jsem to sám,ale nejsem programátor a bohužel je to nad moje síly. Děkuji za pomoc.

//+------------------------------------------------------------------+
//| X trader.mq4 |
//| Copyright © 2012, www.FxAutomated.com |
//| www.FxAutomated.com |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2012, www.FxAutomated.com"
#property link "www.FxAutomated.com"

//---- input parameters
extern double Lots=0.1;
extern int TakeProfit=150;
extern int StopLoss=100;
extern string Ma1="First Ma settings";
extern int Ma1Period=16;
extern int Ma1Shift=8;
extern int Ma1Method=0;
extern int Ma1AppliedPrice=4;
extern string Ma2="Second Ma settings";
extern int Ma2Period=1;
extern int Ma2Shift=0;
extern int Ma2Method=0;
extern int Ma2AppliedPrice=4;
extern int MagicNumber=320101;


//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
//----
Alert("Visit www.FxAutomated.com for more goodies!");
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert starts |
//+------------------------------------------------------------------+
int start()
{
//----
int StopMultd,Slip=5;


int digits=MarketInfo("EURUSD",MODE_DIGITS);
StopMultd=10;
double TP=NormalizeDouble(TakeProfit*StopMultd,Digits);
// stop loss
double SL=NormalizeDouble(StopLoss*StopMultd,Digits);

double Slippage=NormalizeDouble(Slip*StopMultd,Digits);

// Calculate stop loss
double slb=NormalizeDouble(Ask-SL*Point,Digits);
double sls=NormalizeDouble(Bid+SL*Point,Digits);

// Calculate take profit
double tpb=NormalizeDouble(Ask+TP*Point,Digits);
double tps=NormalizeDouble(Bid-TP*Point,Digits);

// Ma strategy one
double MA1_bc=iMA(NULL,0,Ma1Period,Ma1Shift,Ma1Method,Ma1AppliedPrice,0);
double MA1_bp=iMA(NULL,0,Ma1Period,Ma1Shift,Ma1Method,Ma1AppliedPrice,1);
double MA1_bl=iMA(NULL,0,Ma1Period,Ma1Shift,Ma1Method,Ma1AppliedPrice,2);



// Ma constant
double MA2_bc=iMA(NULL,0,Ma2Period,Ma2Shift,Ma2Method,Ma2AppliedPrice,0);
double MA2_bp=iMA(NULL,0,Ma2Period,Ma2Shift,Ma2Method,Ma2AppliedPrice,1);
double MA2_bl=iMA(NULL,0,Ma2Period,Ma2Shift,Ma2Method,Ma2AppliedPrice,2);



//-------------------------------------------------------------------+
//Check open orders
//-------------------------------------------------------------------+
if(OrdersTotal()>0){
for(int i=1; i {
if (OrderSelect(i-1,SELECT_BY_POS)==true) // If the next is available
{
if(OrderMagicNumber()==MagicNumber) {int halt1=1;}

}
}
}
//-------------------------------------------------------------------+

//-------------------------------------------------------------------+
// trading strategy
//-------------------------------------------------------------------+

Comment("For more goodies, managed accounts, forex signals and premium EAs visit www.FxAutomated.com");


if(halt1!=1){// halt1

// Sell criteria
if ((MA1_bc>MA2_bc)&&(MA1_bp>MA2_bp)&&(MA1_bl {
int opensell=OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,0,0,"X trader order ",MagicNumber,0,Green);
if(opensell }

// Buy criteria
if ((MA1_bcMA2_bl)) //Signal Buy
{
int openbuy=OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,0,0,"X trader order ",MagicNumber,0,Blue);
if(openbuy }

}// halt1

//-----------------------------------------------------------------------------------------------------
if(OrdersTotal()>0){
for(i=1; i
if (OrderSelect(i-1,SELECT_BY_POS)==true){ // If the next is available

if((OrderMagicNumber()==MagicNumber&&OrderType()==OP_BUY)&&(OrderTakeProfit()==0||OrderStopLoss()==0)) { OrderModify(OrderTicket(),0,slb,tpb,0,CLR_NONE); }
if((OrderMagicNumber()==MagicNumber&&OrderType()==OP_SELL)&&(OrderTakeProfit()==0||OrderStopLoss()==0)) { OrderModify(OrderTicket(),0,sls,tps,0,CLR_NONE); }

}
}
}

//-------------------------------------------------------------------+
// Error processing
//-------------------------------------------------------------------+
if(buyfail==1||sellfail==1){
int Error=GetLastError();
if(Error==130){Alert("Wrong stops. Retrying."); RefreshRates();}
if(Error==133){Alert("Trading prohibited.");}
if(Error==2){Alert("Common error.");}
if(Error==146){Alert("Trading subsystem is busy. Retrying."); Sleep(500); RefreshRates();}

}

//-------------------------------------------------------------------
return(0);
}
//+-----------------------------------

  • 2 týdny později...
Odesláno

Chtěl bych se zeptat? V MT4 se obchoduje lépe než například u SaxoBank? Jsem zdde nový a nějak v tom mám bordel. Jaký je tedy rozdíl? A když mluvíte o AOS ,tak bych se chtěl zeptat co tato zkratka znamená? :)

Odesláno

zdenda99yz:
Platforma MT4 je na forex pro mě osobně nejlepší jakou jsem kdy používal,záleží hlavně na tom zvolit dobrého brokera.Platformu Saxotrader moc neznám ale řekl bych že je co se týče funkcí,možnosti programování,testování a možnosti vkládání různých indikátorů ztažených z internetu na tom o něco hůř a navíc myslím že není ani česky.Jinak zkratka AOS znamená automatický obchodní systém,čili strategie kterou zapneš ve svojí platformě a ona za tebe sama provádí obchody podle předem nastavených pravidel.

Odesláno

Zdravím Vás všechny , potřeboval bych prosím pomoci s programováním . Nevím jak mám dostat zpět hodnotu iMa na cenu, chtěl bych aby se mi vracela hodnota která je rovna ceně na konci čáry od iMa . Když si hodnotu nechám ukázat pomocí "Alert" ,tak mi to píše nechám

21889

  • 3 týdny později...
Odesláno

Čus, určitě budete vědět, jak nastavit uzavření půl pozice po atakování určité hodnoty. Např. otevřu pozici na 1.5000, SL na 1.5500, TP na 1.4500 a kdyz mi cena dojde na 1,4550, tak jak nastavit uzavření právě půl pozice na této ceně. Dík

Odesláno

Taky si myslím že to jde zatím jedině ručne,jediným východiskem je otevřít více pozic které budou mít různé SL a PT.Na toto pro MT naštěstí existují skripty které umožnují otevří více pozic současně v jediný moment na stejné ceně.

  • 4 týdny později...
Odesláno

prosim, je to uplne primitivni, ale nebezi mi to, je tu nekdo, kdo pomuze zacatecnikovi
napr: nakup v case time framu 5m tj. xx:xa:00 pokud je aktualni svicka zelena

extern double TP = 200;
extern double SL = 150;
extern double Lots = 0.1;

int start()
{

if(Open[1]>Close[1] && Open[0] {
//Alert("Nakup v case",TimeToStr(Time[0]));
int ticketId = OrderSend(Symbol(), OP_BUY, Lots, Ask, 0, (Ask - SL * Point), Ask + TP * Point, NULL, 0, 0, CLR_NONE);

}

return(0);
}

Odesláno

prosim, je to uplne primitivni, ale nebezi mi to, je tu nekdo, kdo pomuze zacatecnikovi
napr: nakup v case time framu 5m tj. xx:xa:00 pokud je aktualni svicka zelena

extern double TP = 200;
extern double SL = 150;
extern double Lots = 0.1;

int start()
{

if(Open[1]>Close[1] && Open[0] {
//Alert("Nakup v case",TimeToStr(Time[0]));
int ticketId = OrderSend(Symbol(), OP_BUY, Lots, Ask, 0, (Ask - SL * Point), Ask + TP * Point, NULL, 0, 0, CLR_NONE);

}

return(0);
}

Odesláno

Zdravím,chtěl jsem si v testru strategií otestovat strategii london breakout ale test je do 5 vteřin hotový a neudělá to žádný obchod.Zkoušel jsem různá nastavení,časové rámce atd,ale pořád nic.Mohl by mi někdo poradit prosím?

22562

22563

22564

Odesláno

Hr62 děkuju za pomoc.Strategii jsem nahrál do složky experts,skripty do složky scripts a indikátory do složky indicators.U všech skriptů jsem povolil umožnit obchodování,umožnit import a povolit funkci DLL.U skriptů buy market,sell market,london breakout input calculator a london breakout scriptV3,1 jsem zkoušel různá nastavení všech proměných ale stále bez jediného obchodu.Nerozumím větě do grafu v testri musíš vložit script.Vždy když dám začátek testu a povolím vizuální zobrazování tak se otevře nový graf a do něj nic vložit nejde.Mohl by jste mi teda vysvětlit co dělám špatně aby to už konečně fungovalo?


×
×
  • Vytvořit...