У вас не стоит Flash Player
Page 5 of 5 < 1 2 3 4 5
Настройки
#56971 - Mon Jul 29 2013 10:25 AM Re: #58 Блоки ЦенаВыхода Бар выхода и бар входа [Re: Danil]
777 Offline
Carpal Tunnel

Registered: Thu Apr 01 2010
Записи: 2564
Loc: г. Дзержинский
Originally Posted By: Danil
Что такое "неправильный вход"?

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

Наверх
#56973 - Mon Jul 29 2013 10:44 AM Re: #58 Блоки ЦенаВыхода Бар выхода и бар входа [Re: Farin]
777 Offline
Carpal Tunnel

Registered: Thu Apr 01 2010
Записи: 2564
Loc: г. Дзержинский
Originally Posted By: Farin
Уважаемый господин 777 !
Возникла такая проблемашечка:

Не могу запустить скрипт.
c:\Users\ФаРиН\AppData\Local\TSLab\TSLab12\temp\code181.cs(118,39) : error CS0433:

Тип "TSLab.Script.Handlers.HasTwoLoss" существует как в "c:\Program Files (x86)\TSLab 1.2\TSLab.Script.Handlers.dll",

так и в "c:\Program Files (x86)\TSLab 1.2\Handlers\Exit_price.dll"

И что теперь делать?
Exit_price.dll удалять нельзя и TSLab.Script.Handlers.dll тоже нельзя.

Не могли бы вы переделать вашу сборку? Учитывая реалии сборки 1.2.7.0
Покорнейше просим!


Мне не сподручно компилировать. Вот даю открытым кодом. Поменяв namespace сможете скомпилировать и пользовать. HasTwoLoss не даю, так как разработчики ее уже в программу запаяли:

Code:
using System;
using System.Linq;
using TSLab.Script.Realtime;
using System.Collections.Generic;
using TSLab.Script;
using TSLab.Script.Handlers;

// ReSharper disable UnusedAutoPropertyAccessor.Global
// ReSharper disable MemberCanBePrivate.Global
// ReSharper disable UnusedMember.Global
   namespace TSLab.Script.Handlers
{
    [HandlerName("Кол-во баров после неправильного входа")]
    [HandlerCategory("777")]
    public class LastWasLossЗ : IOneSourceHandler, IBooleanReturns, IValuesHandler, ISecurityInputs
{
    		 [HandlerParameter(true, "5", Min = "1", Max = "10", Step = "1")]
        public int Пропуск
        {
            get;
            set;
        }
 public bool Execute(ISecurity source, int barNum)
 {
  var pos = source.Positions.LastPositionClosed;         
  if (pos == null)
  {
   return false;
  }
  return pos.Profit() <= 0 && pos.ExitBarNum + Пропуск > barNum;
 }
    }}



Отредактировано 777 (Mon Jul 29 2013 10:55 AM)
_________________________
«Существует 3 типа лжи: ложь, наглая ложь и статистика»
Дизраэли.

Наверх
#56974 - Mon Jul 29 2013 10:45 AM Re: #58 Блоки ЦенаВыхода Бар выхода и бар входа [Re: Farin]
777 Offline
Carpal Tunnel

Registered: Thu Apr 01 2010
Записи: 2564
Loc: г. Дзержинский

Code:
using System;
using System.Linq;
using TSLab.Script.Realtime;

// ReSharper disable UnusedAutoPropertyAccessor.Global
// ReSharper disable MemberCanBePrivate.Global
// ReSharper disable UnusedMember.Global
namespace TSLab.Script.Handlers
{
    [HandlerName("Номер бара Входа")]
    [HandlerCategory("777")]
    public class N_свечи_входа : IPosition2Double
    {
        public double Execute(IPosition pos, int barNum)
        {
        	
            if (pos == null)
            {
                return 0;
            }
            return pos.EntryBarNum ;
        }
    }}
 
_________________________
«Существует 3 типа лжи: ложь, наглая ложь и статистика»
Дизраэли.

Наверх
#56975 - Mon Jul 29 2013 10:46 AM Re: #58 Блоки ЦенаВыхода Бар выхода и бар входа [Re: Farin]
777 Offline
Carpal Tunnel

Registered: Thu Apr 01 2010
Записи: 2564
Loc: г. Дзержинский

Code:
using System;
using System.Linq;
using TSLab.Script.Realtime;
using System.Collections.Generic;
using TSLab.Script;
using TSLab.Script.Handlers;

// ReSharper disable UnusedAutoPropertyAccessor.Global
// ReSharper disable MemberCanBePrivate.Global
// ReSharper disable UnusedMember.Global
namespace TSLab.Script.Handlers
{
    [HandlerName("Цена Выхода")]
    [HandlerCategory("777")]
    public class ExitPrice : IOneSourceHandler, IDoubleReturns, IValuesHandler, ISecurityInputs
    {
        public double Execute(ISecurity source, int barNum)
        {
        
         var pos = source.Positions.LastPositionClosed;
        
           
            
            
            return pos == null ? 0 : pos.ExitPrice;
        }
    }}
_________________________
«Существует 3 типа лжи: ложь, наглая ложь и статистика»
Дизраэли.

Наверх
#56976 - Mon Jul 29 2013 10:46 AM Re: #58 Блоки ЦенаВыхода Бар выхода и бар входа [Re: 777]
777 Offline
Carpal Tunnel

Registered: Thu Apr 01 2010
Записи: 2564
Loc: г. Дзержинский

Code:
using System;
using System.Linq;
using TSLab.Script.Realtime;
using System.Collections.Generic;
using TSLab.Script;
using TSLab.Script.Handlers;

// ReSharper disable UnusedAutoPropertyAccessor.Global
// ReSharper disable MemberCanBePrivate.Global
// ReSharper disable UnusedMember.Global
namespace TSLab.Script.Handlers
{
    [HandlerName("Номер бара Выхода")]
    [HandlerCategory("777")]
    public class N_свечи_Выхода : IOneSourceHandler, IDoubleReturns, IValuesHandler, ISecurityInputs
    {
        public double Execute(ISecurity source, int barNum)
        {
        	var pos = source.Positions.LastPositionClosed;
          
        	
            if (pos == null)
            {
                 
               return 0;
            
            }
            return pos.ExitBarNum;
        }
    }}
_________________________
«Существует 3 типа лжи: ложь, наглая ложь и статистика»
Дизраэли.

Наверх
#56977 - Mon Jul 29 2013 10:47 AM Re: #58 Блоки ЦенаВыхода Бар выхода и бар входа [Re: 777]
777 Offline
Carpal Tunnel

Registered: Thu Apr 01 2010
Записи: 2564
Loc: г. Дзержинский

Code:
using System;
using System.Linq;
using TSLab.Script.Realtime;
using System.Collections.Generic;
using TSLab.Script;
using TSLab.Script.Handlers;

// ReSharper disable UnusedAutoPropertyAccessor.Global
// ReSharper disable MemberCanBePrivate.Global
// ReSharper disable UnusedMember.Global
namespace TSLab.Script.Handlers
{
    [HandlerName("Номер текущего бара")]
    [HandlerCategory("777")]
    public class Nбара : IOneSourceHandler, IDoubleReturns, IValuesHandler, ISecurityInputs
    {
        public double Execute(ISecurity source, int barNum)
        {
   
            
            
            return barNum;
        }
    }}
_________________________
«Существует 3 типа лжи: ложь, наглая ложь и статистика»
Дизраэли.

Наверх
#56978 - Mon Jul 29 2013 10:47 AM Re: #58 Блоки ЦенаВыхода Бар выхода и бар входа [Re: 777]
777 Offline
Carpal Tunnel

Registered: Thu Apr 01 2010
Записи: 2564
Loc: г. Дзержинский

Code:
using System;
using System.Linq;
using TSLab.Script.Realtime;
using System.Collections.Generic;
using TSLab.Script;
using TSLab.Script.Handlers;

// ReSharper disable UnusedAutoPropertyAccessor.Global
// ReSharper disable MemberCanBePrivate.Global
// ReSharper disable UnusedMember.Global
namespace TSLab.Script.Handlers
{
    [HandlerName("Профит Последней Закрытой Позиции")]
    [HandlerCategory("777")]
    public class Доход_последней_закрытой_позы : IOneSourceHandler, IDoubleReturns, IValuesHandler, ISecurityInputs
    {
        public double Execute(ISecurity source, int barNum)
        {
        
         var pos = source.Positions.LastPositionClosed;
        
           
            
            
         return pos == null ? 0 : pos.Profit();
        }
    }}
_________________________
«Существует 3 типа лжи: ложь, наглая ложь и статистика»
Дизраэли.

Наверх
#56979 - Mon Jul 29 2013 10:48 AM Re: #58 Блоки ЦенаВыхода Бар выхода и бар входа [Re: 777]
777 Offline
Carpal Tunnel

Registered: Thu Apr 01 2010
Записи: 2564
Loc: г. Дзержинский
Code:
using System;
using TSLab.Script;
using TSLab.Script.Handlers;
using System.Linq;
using TSLab.Script.Realtime;
using System.Collections.Generic;

namespace test
{
    [HandlerName("Profit_N_close_Position")]
    [HandlerCategory("777")]
    public class LastPosition : IOneSourceHandler, IDoubleReturns, IValuesHandler, ISecurityInputs
    {
        [HandlerParameter(true, "", NotOptimized = true)]
        public int Number { get; set; }

        public double Execute(ISecurity source, int barNum)
        {
            var list = source.Positions.Where(pos => !pos.IsActive && pos.EntryBarNum < barNum)
            .OrderBy(pos => pos.ExitBar.Date).ToArray();
            if (list.Length < 1)
                return 0;
            else if ((list.Length - Number) < 0 || Number<0)
                return 0;
            else
                return list[list.Length - Number].Profit();
        }
    }
}
_________________________
«Существует 3 типа лжи: ложь, наглая ложь и статистика»
Дизраэли.

Наверх
#56980 - Mon Jul 29 2013 10:48 AM Re: #58 Блоки ЦенаВыхода Бар выхода и бар входа [Re: 777]
777 Offline
Carpal Tunnel

Registered: Thu Apr 01 2010
Записи: 2564
Loc: г. Дзержинский
Code:
using System;
using System.Linq;
using TSLab.Script.Realtime;
using System.Collections.Generic;
using TSLab.Script;
using TSLab.Script.Handlers;

// ReSharper disable UnusedAutoPropertyAccessor.Global
// ReSharper disable MemberCanBePrivate.Global
// ReSharper disable UnusedMember.Global
namespace TSLab.Script.Handlers
{
    [HandlerName("Кол-во баров после неправильного входа в Лонг")]
    [HandlerCategory("777")]
    public class LastWasLossLong : IOneSourceHandler, IBooleanReturns, IValuesHandler, ISecurityInputs
{
    		 [HandlerParameter(true, "5", Min = "1", Max = "10", Step = "1")]
        public int Пропуск
        {
            get;
            set;
        }
 public bool Execute(ISecurity source, int barNum)
 {
  var pos = source.Positions.LastLongPositionClosed;         
  if (pos == null)
  {
   return false;
  }
  return pos.Profit() <= 0 && pos.ExitBarNum + Пропуск > barNum;
 }
    }}
    
    
_________________________
«Существует 3 типа лжи: ложь, наглая ложь и статистика»
Дизраэли.

Наверх
#56981 - Mon Jul 29 2013 10:49 AM Re: #58 Блоки ЦенаВыхода Бар выхода и бар входа [Re: 777]
777 Offline
Carpal Tunnel

Registered: Thu Apr 01 2010
Записи: 2564
Loc: г. Дзержинский
Code:
using System;
using System.Linq;
using TSLab.Script.Realtime;
using System.Collections.Generic;
using TSLab.Script;
using TSLab.Script.Handlers;

// ReSharper disable UnusedAutoPropertyAccessor.Global
// ReSharper disable MemberCanBePrivate.Global
// ReSharper disable UnusedMember.Global
namespace TSLab.Script.Handlers
{
    [HandlerName("Кол-во баров после неправильного входа в шорт")]
    [HandlerCategory("777")]
    public class LastWasLossShort : IOneSourceHandler, IBooleanReturns, IValuesHandler, ISecurityInputs
{
    		 [HandlerParameter(true, "5", Min = "1", Max = "10", Step = "1")]
        public int Пропуск
        {
            get;
            set;
        }
 public bool Execute(ISecurity source, int barNum)
 {
  var pos = source.Positions.LastShortPositionClosed;         
  if (pos == null)
  {
   return false;
  }
  return pos.Profit() <= 0 && pos.ExitBarNum + Пропуск > barNum;
 }
    }}
_________________________
«Существует 3 типа лжи: ложь, наглая ложь и статистика»
Дизраэли.

Наверх
#56982 - Mon Jul 29 2013 10:49 AM Re: #58 Блоки ЦенаВыхода Бар выхода и бар входа [Re: 777]
777 Offline
Carpal Tunnel

Registered: Thu Apr 01 2010
Записи: 2564
Loc: г. Дзержинский
Code:
	using System;
using System.Linq;
using TSLab.Script.Realtime;
using System.Collections.Generic;
using TSLab.Script;
using TSLab.Script.Handlers;

// ReSharper disable UnusedAutoPropertyAccessor.Global
// ReSharper disable MemberCanBePrivate.Global
// ReSharper disable UnusedMember.Global
namespace TSLab.ScriptFrom777
{

  [HandlerName("PosProfitName")]
    [HandlerCategory("777")]
		
      public class LastProfitFromByName : IOneSourceHandler, IDoubleReturns, IValuesHandler, ISecurityInputs
{
        [HandlerParameter(true, "", NotOptimized = true)]
public string Name { get; set; }
public double Execute(ISecurity source, int barNum)
{
// отбираем закрытые сделки с нужным именем закрытия, сортируем по дате закрытия
var list = source.Positions.Where(pos => !pos.IsActive && pos.ExitBarNum < barNum
&& pos.ExitSignalName == Name)
.OrderByDescending(pos => pos.ExitBar.Date).ToArray();
// возвращаем профит первой из найденных позиций
return list.Length < 1 ? 0 : list[0].Profit();
}
      }}
_________________________
«Существует 3 типа лжи: ложь, наглая ложь и статистика»
Дизраэли.

Наверх
#56983 - Mon Jul 29 2013 10:49 AM Re: #58 Блоки ЦенаВыхода Бар выхода и бар входа [Re: 777]
777 Offline
Carpal Tunnel

Registered: Thu Apr 01 2010
Записи: 2564
Loc: г. Дзержинский

Code:
using System;
using System.Linq;
using TSLab.Script.Realtime;
using System.Collections.Generic;
using TSLab.Script;
using TSLab.Script.Handlers;

// ReSharper disable UnusedAutoPropertyAccessor.Global
// ReSharper disable MemberCanBePrivate.Global
// ReSharper disable UnusedMember.Global
namespace TSLab.Script.Handlers

{
    [HandlerName("Профит Предпоследней закрытой позиции Шорт")]
    [HandlerCategory("777")]
    public class HasTwoLoss__ : IOneSourceHandler, IDoubleReturns, IValuesHandler, ISecurityInputs
{
    public double Execute(ISecurity source, int barNum)
    {
        var list = source.Positions.Where(pos => !pos.IsActive &&  pos.IsShort && pos.EntryBarNum < barNum).OrderByDescending(pos => pos.ExitBar.Date).ToArray();
        if(list.Length < 2)
        {
            return 0;
        }
       return list[1].Profit();
    }
    }}
    
  
_________________________
«Существует 3 типа лжи: ложь, наглая ложь и статистика»
Дизраэли.

Наверх
#56984 - Mon Jul 29 2013 10:50 AM Re: #58 Блоки ЦенаВыхода Бар выхода и бар входа [Re: 777]
777 Offline
Carpal Tunnel

Registered: Thu Apr 01 2010
Записи: 2564
Loc: г. Дзержинский
Code:
using System;
using System.Linq;
using TSLab.Script.Realtime;
using System.Collections.Generic;
using TSLab.Script;
using TSLab.Script.Handlers;

namespace TSLab.ScriptFrom777
{
    [HandlerName("Profit From First for Day")]
    [HandlerCategory("777")]
    public class ProfitFromFirst : IOneSourceHandler, IDoubleReturns, IValuesHandler, ISecurityInputs
{
public double Execute(ISecurity source, int barNum)
{
// берем дату текущего бара
var curBarDate = source.Bars[barNum].Date;
// отбираем закрытые сделки с днем закрытия совпадающим с текущим, сортируем по дате закрытия
var list = source.Positions.Where(pos => !pos.IsActive && pos.EntryBarNum < barNum
&& pos.ExitBar.Date.DayOfYear  == curBarDate.DayOfYear
&& pos.ExitBar.Date.Year  == curBarDate.Year)
.OrderBy(pos => pos.ExitBar.Date).ToArray();
// возвращаем профит первой из найденных позиций
if(list.Length < 1)
{
return 0;
}
return list[0].Profit();
}
    }
}
_________________________
«Существует 3 типа лжи: ложь, наглая ложь и статистика»
Дизраэли.

Наверх
#56985 - Mon Jul 29 2013 10:53 AM Re: #58 Блоки ЦенаВыхода Бар выхода и бар входа [Re: 777]
777 Offline
Carpal Tunnel

Registered: Thu Apr 01 2010
Записи: 2564
Loc: г. Дзержинский
Code:
	using System;
using System.Linq;
using TSLab.Script.Realtime;
using System.Collections.Generic;
using TSLab.Script;
using TSLab.Script.Handlers;

// ReSharper disable UnusedAutoPropertyAccessor.Global
// ReSharper disable MemberCanBePrivate.Global
// ReSharper disable UnusedMember.Global
namespace TSLab.ScriptFrom777
{

  [HandlerName("PosProfitПредпоследняяName")]
    [HandlerCategory("777")]
		
      public class Предпоследн_ProfitFromByName : IOneSourceHandler, IDoubleReturns, IValuesHandler, ISecurityInputs
{
        [HandlerParameter(true, "", NotOptimized = true)]
public string Name { get; set; }
public double Execute(ISecurity source, int barNum)
{
// отбираем закрытые сделки с нужным именем закрытия, сортируем по дате закрытия
var list = source.Positions.Where(pos => !pos.IsActive && pos.ExitBarNum < barNum
&& pos.ExitSignalName == Name)
.OrderByDescending(pos => pos.ExitBar.Date).ToArray();
// возвращаем профит первой из найденных позиций
return list.Length < 2 ? 0 : list[1].Profit();


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

Наверх
Page 5 of 5 < 1 2 3 4 5


Moderator:  ViL, sar