- нужно добавить условие - если есть открытая позиция на покупку, при новом сигнале (см.пункт выше) сделка открывается только в том случае когда цена открытия новой сделки выше цены открытия последней открытой позиции на заданное кол-во пунктов, например 30.
Значит нужна функция, которая обходит список всех позиций и запоминает самую ... цену. Здесь нужно уточнение: если имеем позицию BUY, то следующая может быть открыта если отступ от её цены ВВЕРХ N-пунктов (пипсов) или ВНИЗ N-пунктов (пипсов)?
Аналогичный вопрос для SELL позиции.в две стороны отступ ( поправил в шапке темы)
"если имеем позицию BUY, то следующая может быть открыта если отступ от
её цены ВВЕРХ N-пунктов (пипсов) или ВНИЗ N-пунктов (пипсов)?" - да
в две стороны отступ ( поправил в шапке темы)
"если имеем позицию BUY, то следующая может быть открыта если отступ от
её цены ВВЕРХ N-пунктов (пипсов) или ВНИЗ N-пунктов (пипсов)?" - да
Не понятно. Нужно прописать для BUY и для SELL. Не может быть такого в природе, чтобы одновременно было и ВЫШЕ и НИЖЕ :) .
пример:
- есть последняя открытая позиция на бай по цене 1,2550
- новую позицию на покупку можно открыть выше 1,2580
если открыта позиция на продажу , новая позиция может может быть открыта если цена открытия ниже цены открытия последней открытой позиции на продажу на заданное кол-во пунктов, например 30
пример:
- есть последняя открытая позиция на селл по цене 1,2550
- новую позицию на селл можно открыть ниже 1,2520
- www.metatrader5.com
Открыто две позиции BUY. Работает по варианту 2:
Так как всё-таки работать: с последней BUY позицией или всё-таки с позицией BUY у которой самая высокая цена открытия?
сорри, понял ошибки в логике - исправил в посте выше и в шапке
логика как в посте №4 ( относительно последней сравниваем , при покупках если есть открытые на бай новая только выше , при продажах наоборот)
сорри, понял ошибки в логике - исправил в посте выше и в шапке
логика как в посте №4 ( относительно последней сравниваем , при покупках если есть открытые на бай новая только выше , при продажах наоборот)
В "шапке" (пост №1) не исправили. Люди будут смотреть в первую очередь первый пост, а не четвёртый. Поэтому первый пост должен быть красавцем во всех отношениях .
Есть у меня одна функция - она возвращает количество позиций BUY ("count_buys"), цену самой НИЗКОЙ позиции BUY ("price_lowest_buy"), количество позиций SELL ("count_sells"), цену самой ВЫСОКОЙ позиции SELL ("price_highest_sell")
//+------------------------------------------------------------------+ //| Calculate all positions | //+------------------------------------------------------------------+ void CalculateAllPositions(int &count_buys,double &price_lowest_buy, int &count_sells,double &price_highest_sell) { count_buys =0; price_lowest_buy =DBL_MAX; count_sells =0; price_highest_sell=DBL_MIN; for(int i=PositionsTotal()-1;i>=0;i--) if(m_position.SelectByIndex(i)) // selects the position by index for further access to its properties if(m_position.Symbol()==m_symbol.Name() && m_position.Magic()==m_magic) { if(m_position.PositionType()==POSITION_TYPE_BUY) { count_buys++; if(m_position.PriceOpen()<price_lowest_buy) // the lowest position of "BUY" is found price_lowest_buy=m_position.PriceOpen(); continue; } else if(m_position.PositionType()==POSITION_TYPE_SELL) { count_sells++; if(m_position.PriceOpen()>price_highest_sell) // the highest position of "SELL" is found price_highest_sell=m_position.PriceOpen(); continue; } } }
Нужно чуть переделать, чтобы она искала цену самой ВЫСОКОЙ позиции BUY и цену самой НИЗКОЙ позиции SELL...
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
добрый день. Прошу помочь решить две задачи. В качестве примера взят стохастик, но может быть применено и для других индикаторов, например пересечение скользящих средних.
основные условия открытия позиции на примере открытия на покупку (для продаж зеркально):
пример для открытия на бай:
пример для открытия на селл:
условия закрытия позиции (на покупку), должны выполнится оба пункта
сорри если не точно пояснил по закрытию, на графике закрытие выглядит так: красными крестикам отмечены два сигнала на закрытие сделки, т.к. медленная (красного цвета) линия стохастика пересекает уровень 80 сверху вниз. Но сделка закрывается только на втором сигнале/пересечении
код. выполняются только пункты 1 по открытию и закрытию