Ну... по поводу связки с новым баром ты - сам обозначил в своем запросе, поэтому я и добавил проверку на открытие нового бара. Рад, что ты разобрался в коде, в отличие от моих коллег.)))matro3, ansol, vladradon спасибо за отклики, сделал так(это тестовый модуль):
double MA, Price;
int UpDown;
void OnInit()
{
MA = iMA(NULL, 0, 15, 0, 0, 0, 0);
if (Bid>=MA) UpDown=1; //если текущая цена при первом запуске сова выше или равна текущего показания машки, то флаговой переменной присваиваем 1 - запоминаем положение графика относительно машки, как высшее
if (Bid<MA) UpDown=2; //запоминаем, как низшее относительно показаний машки
}
void OnTick()
{
MA = iMA(NULL, 0, 15, 0, 3, 0, 0);//period и 3-ка - это параметры машки
if (UpDown==1 && MA<Bid) {Price=MA; UpDown=2; Alert(Price);}
if (UpDown==2 && MA>Bid) {Price=MA; UpDown=1; Alert(Price);}
}
Т.к. требовалось найти пересечение именно в момент движения, а не по сформировавшемуся бару.
Если кому-нибудь интересно, библиотеки которые использую для определения нового бара, mql4(там же и новое событие OnNewBar()): https://yadi.sk/d/B6s-GGY8h2WMm https://yadi.sk/d/XACpJzUwh2WMs
Сообщения публикуются только после проверки модератором - к примеру: я написал сообщение в 10.00, опубликованно оно было в 13.00, а в истории(и соответственно порядковых номерах) время по прежнему 10.00.А это:
Сделал так: Lot=TotalOrdersProfit/N/MarketInfo(Symbol(),MODE_TICKVALUE)
о чем? Может я пропустил какое-то твое сообщение?...
получить координаты прямоугольника
Доброго времени суток. Кто-нибудь знает методы установления зависимостей между значений extern bool переменных? Автоматический их перевод в настройках советника - если одну переменную поставили true, другая тут-же принимает значение true(ну, или false)?
ЗДРАВСТВУЙТЕ---КТО СМОЖЕТ РАЗОБРАТЬСЯ С ЭТИМ ИНДИКАТОРОМ? КАК ЕГО ОТКРЫТЬПосмотреть вложение 208667
rar.gif 77_indikator_RTV (2).rar (11.1 Кб)
кажется индиккатор этот не для MQL4 . а можно его переделать ?
Этот индикатор не для МТ4, а для МТ5 платформы. Что бы его переделать нужен исходник. Да и вряд ли кто-то возьмется за бесплатно его переделывать.
Этот индикатор не для МТ4, а для МТ5 платформы. Что бы его переделать нужен исходник. Да и вряд ли кто-то возьмется за бесплатно его переделывать.
Здравствуйте. а вы непоможете вот зтот скомпилироваать а то чегото я никак.Спасибо.
for (i=OrdersTotal()-1;i>=0;i--){
if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){
if (OrderType()==OP_SELL && OrderSymbol()==Symbol()){
s++;Profit=OrderLots()*(OrderOpenPrice()-(FindLastOpen()-(StepOpenOR+RecoveryVolume)*Point))/Point*PointValue;ProfRecSell+=Profit;}
if (OrderType()==OP_BUY && OrderSymbol()==Symbol()){
b++;Profit=OrderLots()*((FindLastOpen()-(StepOpenOR+RecoveryVolume)*Point)-OrderOpenPrice())/Point*PointValue;ProfRecBuy+=Profit;}}}
Начальные значения переменных "s" и "b" какие? (Предполагаю что "0".)Прошу помощи в отладке
При тестировании Конструкция пропускает первый ордер sell:
Последующие ордера sell учитывает.PHP:for (i=OrdersTotal()-1;i>=0;i--){ if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){ if (OrderType()==OP_SELL && OrderSymbol()==Symbol()){ s++;Profit=OrderLots()*(OrderOpenPrice()-(FindLastOpen()-(StepOpenOR+RecoveryVolume)*Point))/Point*PointValue;ProfRecSell+=Profit;} if (OrderType()==OP_BUY && OrderSymbol()==Symbol()){ b++;Profit=OrderLots()*((FindLastOpen()-(StepOpenOR+RecoveryVolume)*Point)-OrderOpenPrice())/Point*PointValue;ProfRecBuy+=Profit;}}}
Предложи много денег и просить не надо будет.
за 3 строчки кода в сове, которая пока что только предположительно будет нормальная? :laugh:
Много не дашь, а мало не возьмут еще и застыдят!)
Господа, есть индикатор, он даёт Алерты (стрелочки на графике) на покупки и продаже в нём вшита пара индюков МАшка, РСИ вроде...
НО НЕТ совы..
Каким кодом сделать открытие ордеров по сигналу алерта? Может Какойнибудь другой советник переделать получится... Устал просить уже всех((