Скачать MetaTrader 5

Смотри, как бесплатно скачать роботов

Интересный скрипт?
Поставь на него ссылку - пусть другие тоже оценят

Понравился скрипт?
Оцени его работу в терминале MetaTrader 5

2010.06.30 07:41
Индикаторы

Exp - LineofZERO - индикатор для MetaTrader 4

Просмотров:
5105
Рейтинг:
голосов: 4

Авторство:

Некоторые функции, использованные мною в моих экспертах, были скопированы с открытого доступа и модифицированы под нужды каждого эксперта. Автор некоторых функций — KimIV, модификация — Expforex.


Описание:

Показывает линию безубытка для позиций по данному инструменту.

Настройки:

extern int OP=-1;// операция, 0- бай, 1- селл, -1 - все
extern int Magic=-1; // магик (в случае если несколько магиков на одном инструменте, иначе -1) 

Код:

double startZERO(int OP=0)
{
double BuyLots=0;
double SellLots=0;
double BuyProfit=0;
double SellProfit=0;
int Total=OrdersTotal();
for(int i=Total-1;i>=0;i--)
{
if(OrderSelect(i,SELECT_BY_POS))
{
if(OrderSymbol()!=Symbol()&&( OrderMagicNumber()!=Magic || Magic==-1)) continue;
if(OrderType()==OP_BUY)
{
BuyLots=BuyLots+OrderLots();
BuyProfit=BuyProfit+OrderProfit()+OrderCommission()+OrderSwap();
}
if(OrderType()==OP_SELL)
{
SellLots=SellLots+OrderLots();
SellProfit=SellProfit+OrderProfit()+OrderCommission()+OrderSwap();
}
}
}
double Price=0;
double TickValue=MarketInfo(Symbol(),MODE_TICKVALUE);
if(BuyLots>0) double BuyLevel=NormalizeDouble(Bid-(BuyProfit/(TickValue*BuyLots)*Point),Digits); else BuyLevel=0;
if(SellLots>0) double SellLevel=NormalizeDouble(Ask+(SellProfit/(TickValue*SellLots)*Point),Digits); else SellLevel=0;
if((BuyLots-SellLots)>0) Price=NormalizeDouble(Bid-((BuyProfit+SellProfit)/(TickValue*(BuyLots-SellLots))*Point),Digits);
if((SellLots-BuyLots)>0) Price=NormalizeDouble(Ask+((BuyProfit+SellProfit)/(TickValue*(SellLots-BuyLots))*Point),Digits);
string Title="Уровень без убытка для "+Symbol();
string ZeroLevel=" не существует";
if(Price>0) ZeroLevel=" = "+DoubleToStr(Price,Digits);
string Buy=" не существует";
if(BuyLevel>0) Buy=" = "+DoubleToStr(BuyLevel,Digits);
string Sell=" не существует";
if(SellLevel>0) Sell=" = "+DoubleToStr(SellLevel,Digits);
string Message="Уровень без убытка"+ZeroLevel+"\t\nУровень на покупку"+Buy+"\t\nУровень на продажу"+Sell;
if (Price==0)Price=Ask;
if(OP==OP_BUY)return(BuyLevel);
if(OP==OP_SELL)return(SellLevel);
if(OP==-1)return(Price);


}

Картинка:


YURAZ_RSAXEL Скрипт рисует уровни Рудолфа Акселя YURAZ_RSAXEL Скрипт рисует уровни Рудолфа Акселя

Скрипт рисует уровни Рудолфа Акселя

YURAZ_CLOSEPRC_V1 YURAZ_CLOSEPRC_V1

Закрытие всех открытых позиций одним кликом либо закрытие всех позиций при достижении указанного профита в процентах от депозита

Мультипериодный индикатор MK_LaguerreMultiPeriodV2 Мультипериодный индикатор MK_LaguerreMultiPeriodV2

Обычный Laguerre на нескольких таймфреймах одновременно.

AskBid Line AskBid Line

AskBid Line — простейший индикатор, отображающий цену Ask или Bid в виде пунктирной линии на истории.