100% слив!!! Однозначно!!!
//+------------------------------------------------------------------+ //| супер эксперт ТУДА-СЮДА.mq4 | //| | //| | //+------------------------------------------------------------------+ #property copyright "" #property link "" //---- input parameters extern int tp=15; extern double lots=0.1; //+------------------------------------------------------------------+ //| expert initialization function | //+------------------------------------------------------------------+ int init() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| expert deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ int start() { //---- static double lp; if(MathAbs(lp-Bid)>=Point*5){ lp=Bid; OrderSend(Symbol(),OP_BUY,lots,Ask,0,0,Ask+Point*tp); OrderSend(Symbol(),OP_SELL,lots,Bid,0,0,Bid-Point*tp); } //---- return(0); } //+------------------------------------------------------------------+
особенно интересно будет наблюдать на инструменте со спредом
в 5 пунктов или более :о)
что то он неработает как нать, сделки неделает автаматически а если в ручную их подтверждать ругается на sl и tp неверные значение, хотя разбег в 30 пипсов стоит (эт я поменял) в оригинале тут 15
может на демо акаунтах неработает скрипт тока на реале ?
p.s а можна ещё стоп лосс 200 пунктов прикрутить к скрипту :)
вот что тест выдал.
помучаю ещё :)
p.s а можна ещё стоп лосс 200 пунктов прикрутить к скрипту :)
вот что тест выдал.
Символ | GBPUSD (Great Britan vs US Dollar) | ||||
Период | 1 Час (H1) 2006.06.08 07:00 - 2006.07.24 15:00 (2005.01.01 - 2006.07.24) | ||||
Модель | По ценам открытия (быстрый метод на сформировавшихся барах) | ||||
Параметры | tp=15; lots=0.1; | ||||
Баров в истории | 771 | Смоделировано тиков | 1442 | Качество моделирования | n/a |
Начальный депозит | 10000.00 | ||||
Чистая прибыль | 5280.00 | Общая прибыль | 11859.60 | Общий убыток | -6579.60 |
Прибыльность | 1.80 | Матожидание выигрыша | 6.32 | ||
Абсолютная просадка | 0.00 | Максимальная просадка | 6570.60 (30.07%) | Относительная просадка | 30.07% (6570.60) |
Всего сделок | 835 | Короткие позиции (% выигравших) | 418 (92.58%) | Длинные позиции (% выигравших) | 417 (99.52%) |
Прибыльные сделки (% от всех) | 802 (96.05%) | Убыточные сделки (% от всех) | 33 (3.95%) | ||
Самая большая | прибыльная сделка | 15.00 | убыточная сделка | -409.50 | |
Средняя | прибыльная сделка | 14.79 | убыточная сделка | -199.38 | |
Максимальное количество | непрерывных выигрышей (прибыль) | 799 (11850.60) | непрерывных проигрышей (убыток) | 27 (-6505.60) | |
Максимальная | непрерывная прибыль (число выигрышей) | 11850.60 (799) | непрерывный убыток (число проигрышей) | -6505.60 (27) | |
Средний | непрерывный выигрыш | 201 | непрерывный проигрыш | 8 |
помучаю ещё :)
делалось только для тестера.
спасибо Дмитрий :)
а какой командой закрывать позицию ?
extern int stop=100; эта неподходит.
extern double stoploss = 100; и это тоже :(
а какой командой закрывать позицию ?
extern int stop=100; эта неподходит.
extern double stoploss = 100; и это тоже :(
OrderSend(Symbol(),OP_BUY,lots,Ask,0,Ask-Point*sl,Ask+Point*tp); OrderSend(Symbol(),OP_SELL,lots,Bid,0,Bid+Point*sl,Bid-Point*tp);
Надо вот эти две строчки заменить и наверху добваить переменную
extern int sl=100;
//+------------------------------------------------------------------+ //| ????? ??????? ????-????.mq4 | //| | //| | //+------------------------------------------------------------------+ #property copyright "" #property link "" //---- input parameters extern int pnkt=5; extern int tp=5; extern int sl=50; extern int risk=1; double bs,ss; string sc; //+------------------------------------------------------------------+ //| expert initialization function | //+------------------------------------------------------------------+ int init() { //---- if(!GlobalVariableCheck(StringConcatenate(Symbol(),"sw"))) GlobalVariableSet(StringConcatenate(Symbol(),"sw"), MarketInfo(Symbol(),MODE_SWAPLONG)> MarketInfo(Symbol(),MODE_SWAPSHORT)); if(!GlobalVariableCheck(StringConcatenate(Symbol(),"sl"))) GlobalVariableSet(StringConcatenate(Symbol(),"sl"), MarketInfo(Symbol(),MODE_STOPLEVEL)); if(!GlobalVariableCheck("mml")) GlobalVariableSet("mml",MarketInfo(Symbol(),MODE_MINLOT)); if(!GlobalVariableCheck("ld")){ if(GlobalVariableGet("mml")>=0.01&&GlobalVariableGet("mml")<=0.09) GlobalVariableSet("ld",2); if(GlobalVariableGet("mml")>=0.1&&GlobalVariableGet("mml")<=0.9) GlobalVariableSet("ld",1); if(GlobalVariableGet("mml")>=1)GlobalVariableSet("ld",0); } if(!GlobalVariableCheck("mxl")) GlobalVariableSet("mxl",MarketInfo(Symbol(),MODE_MAXLOT)); if(!GlobalVariableCheck("lt")) GlobalVariableSet("lt",MarketInfo(Symbol(),MODE_LOTSIZE)); if(!GlobalVariableCheck("al")) GlobalVariableSet("al",AccountLeverage()); //---- return(0); } //+------------------------------------------------------------------+ //| expert deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| expert lots function | //+------------------------------------------------------------------+ double lots() { double lot=NormalizeDouble(AccountEquity()/GlobalVariableGet("lt") *GlobalVariableGet("al")/100*risk,GlobalVariableGet("ld")); if(lot<GlobalVariableGet("mml"))lot=GlobalVariableGet("mml"); if(lot>GlobalVariableGet("mxl"))lot=GlobalVariableGet("mxl"); return(lot); } //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ int start() { //---- sc=Symbol(); if(!GlobalVariableCheck(StringConcatenate(sc,"lp"))) GlobalVariableSet(StringConcatenate(sc,"lp"),Bid); if(MathAbs(GlobalVariableGet(StringConcatenate(sc,"lp"))-Bid)>=Point*pnkt){ GlobalVariableSet(StringConcatenate(sc,"lp"),Bid); if(GlobalVariableGet(StringConcatenate(sc,"sw"))==1){bs=0.0; ss=Ask+MathMax(GlobalVariableGet(StringConcatenate(sc,"sw")),sl)*Point;} if(GlobalVariableGet(StringConcatenate(sc,"sw"))==0){ss=0.0; bs=Bid-MathMax(GlobalVariableGet(StringConcatenate(sc,"sw")),sl)*Point;} OrderSend(sc,0,lots(),Ask,MathRound((Ask-Bid)/Point), bs,Bid+Point*MathMax(tp,GlobalVariableGet(StringConcatenate(sc,"sl")))); OrderSend(sc,1,lots(),Bid,MathRound((Ask-Bid)/Point), ss,Ask-Point*MathMax(tp,GlobalVariableGet(StringConcatenate(sc,"sl")))); } //---- return(0); } //+------------------------------------------------------------------+
Inteqer и edddim спасибо за советы и помощь :)
edddim а можна написать коментарии к функциям советника если нетрудна :) заранее спасибо :)
edddim а можна написать коментарии к функциям советника если нетрудна :) заранее спасибо :)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Нужна что бы он открывал позиции на покупку и продажу однавременно.
Лотом 0.1
После прохождения 5 пунктов открывался в две стороны снова.
И так до бесконечности.
+ при открытие должен ставить закрытие с профитом в 15 пунктов (можна и 50 вобщем со значением пока неопределился) автоматически на обе позиции.
Лосс значение не нужна
Вобщем интересна что покажет тест на этом :)