У вас не стоит Flash Player
Настройки
#32182 - Mon Oct 17 2011 11:22 AM Открытие если выше (ОткПозЕслБол)
Sergey_gt Offline
newbie

Registered: Mon Sep 20 2010
Записи: 27
Прошу помочь.
Есть событие при котором цена поступает из обновляемого значения на вход "Открытие если выше" потом происходит выход по стопу.

Проблема в том, что как только происходит выход по стопу то осуществляется опять вход(который не нужен!) так как обновляемое значение находится ниже текущей цены и осуществляется вход по "Открытие если выше".
Задача не входить до появления нового события, но войти если событие есть (или было и закончелось), а входа так и не было то держать "Открытие если выше". И как только осуществлен вход убрать возможность входа по "Открытие если выше" до следующего события.


Attachments
ВходЕслиВыше.xml (39 downloads)


Наверх
#32194 - Mon Oct 17 2011 03:29 PM Re: Открытие если выше (ОткПозЕслБол) [Re: Sergey_gt]
ViL Offline
TSLab
Carpal Tunnel

Registered: Sun Oct 17 2010
Записи: 8143
Ну поставьте доп условие для входа, например Закрытие<Обновляемого значения.

Наверх
#32202 - Mon Oct 17 2011 07:18 PM Re: Открытие если выше (ОткПозЕслБол) [Re: ViL]
Sergey_gt Offline
newbie

Registered: Mon Sep 20 2010
Записи: 27
ViL, большое спасибо, а то уже всю голову сломал. В ОткПозЕслБол можно же условие воткнуть, как я сразу не допер :-) . Еще раз спасибо.

Наверх
#32203 - Tue Oct 18 2011 02:12 AM Re: Открытие если выше (ОткПозЕслБол) [Re: ViL]
Sergey_gt Offline
newbie

Registered: Mon Sep 20 2010
Записи: 27
только обрадовался, у меня есть моменты когда цена уходит после срабатывания стопа выше ОткПозЕслБол (обновляемого значения), что приводит к повторному открытию позиции. Может можно как-то запомнить, что сработал стоп, чтоб повторно не входить?


Attachments
ВходЕслиВыше.xml (24 downloads)



Отредактировано Sergey_gt (Tue Oct 18 2011 02:21 AM)

Наверх
#32204 - Tue Oct 18 2011 03:56 AM Re: Открытие если выше (ОткПозЕслБол) [Re: Sergey_gt]
ViL Offline
TSLab
Carpal Tunnel

Registered: Sun Oct 17 2010
Записи: 8143
Ну, задача до конца не понятна, либо ограничивать вход по времени, либо еще как-то. Сначало определите до конца, что Вы хотите, потом просто добавьте это условие для входа.

Наверх
#32207 - Tue Oct 18 2011 10:48 AM Re: Открытие если выше (ОткПозЕслБол) [Re: ViL]
Sergey_gt Offline
newbie

Registered: Mon Sep 20 2010
Записи: 27
Большое спасибо за помощь.
Мне не придумать условие чтоб не входить до появления нового события. Вход осуществляеется если событие есть или было [событие короткое]. И как только осуществлен вход убрать возможность входа по "Открытие если выше" до следующего события.

Событие короткое и за время события цена может не достигнуть точки "Открытие если выше".
Нужно чтоб по сути "Открытие если выше" продолжалось до точки входа, а потом исчезало.

В моей реализации "Открытие если выше" действует всегда после события.
Как пример если взять инструмент Sber03 5M SMA=28, то 14.10.2011 16:20 будет повторный вход, которого мне хотелось бы избежать.
События выведены в Panel2
Мне нужно одно событие один вход.


Attachments
ВходЕслиВыше.xml (28 downloads)



Отредактировано Sergey_gt (Tue Oct 18 2011 12:49 PM)

Наверх
#32210 - Tue Oct 18 2011 12:51 PM Re: Открытие если выше (ОткПозЕслБол) [Re: Sergey_gt]
777 Offline
Carpal Tunnel

Registered: Thu Apr 01 2010
Записи: 2564
Loc: г. Дзержинский
Так не сделать. Нужно "залипало" от одного события до другого.
Code:
  using System.Collections.Generic;
using TSLab.Script.Handlers;

namespace NewIndicators.Support
{
    public class Flip : IBoolAccum
    {
        public IList<bool> Execute(IList<bool> source1, IList<bool> source2)
        {
            return Calc(source1, source2);
        }

        public bool m_last;

        public bool Execute(bool source1, bool source2)
        {
            m_last = Calc(source1, source2, m_last);
            return m_last;
        }

        public static IList<bool> Calc(IList<bool> source1, IList<bool> source2)
        {
            var res = new bool[source1.Count];
            for (int i = 1; i < source1.Count; i++)
            {
                var last = i > 0 ? res[i - 1] : false;
                res[i] = Calc(source1[i], source2[i], last);
            }
            return res;
        }

        public static bool Calc(bool source1, bool source2, bool last)
        {
            var res = last;
            if(!res & source1)
            {
                res = true;
            }
            if (res & source2)
            {
                res = false;
            }
            return res;
        }
    }
}

Скомпилируйте блок, соедините его с пересечением и с есть открытая позиция. А на блок входа подайте этот сигнал.


Отредактировано 777 (Tue Oct 18 2011 12:57 PM)
_________________________
«Существует 3 типа лжи: ложь, наглая ложь и статистика»
Дизраэли.

Наверх
#32211 - Tue Oct 18 2011 12:57 PM Re: Открытие если выше (ОткПозЕслБол) [Re: 777]
Sergey_gt Offline
newbie

Registered: Mon Sep 20 2010
Записи: 27
Спасибо что откликнулись. Подскажите, что нужно с этим текстом сделать или дайте ссылку на какую-нибудь инструкцию.

Наверх
#32212 - Tue Oct 18 2011 01:02 PM Re: Открытие если выше (ОткПозЕслБол) [Re: Sergey_gt]
777 Offline
Carpal Tunnel

Registered: Thu Apr 01 2010
Записи: 2564
Loc: г. Дзержинский
Originally Posted By: Sergey_gt
Спасибо что откликнулись. Подскажите, что нужно с этим текстом сделать или дайте ссылку на какую-нибудь инструкцию.

http://www.tslab.ru/ubb/ubbthreads.php?ubb=showflat&Number=7811&nt=6&page=1

Вам надо вот это: "Создание индикатора -“кубика” из уже готового кода индикатора на C#"


Отредактировано 777 (Tue Oct 18 2011 01:03 PM)
_________________________
«Существует 3 типа лжи: ложь, наглая ложь и статистика»
Дизраэли.

Наверх
#32218 - Tue Oct 18 2011 04:40 PM Re: Открытие если выше (ОткПозЕслБол) [Re: Sergey_gt]
777 Offline
Carpal Tunnel

Registered: Thu Apr 01 2010
Записи: 2564
Loc: г. Дзержинский
Originally Posted By: Sergey_gt
Спасибо что откликнулись.

загляните в личку
_________________________
«Существует 3 типа лжи: ложь, наглая ложь и статистика»
Дизраэли.

Наверх


Moderator:  ViL, sar