Подсмотрел в соседней теме код для написания кубика "профит первой сделки за день", кое-что подправил, но в лаборатории при попытке вывести график индикатора выдает ошибку
Quote:
error CS1501: Ни одна из перегрузок метода 'Execute' не принимает '2' аргумент(ов)

Код следующий
Code:
namespace TSLab_day_profit
{
[HandlerName("Day Profit")]
    [HandlerCategory("777")]
    public class ProfitFromFirst : IOneSourceHandler, IDoubleReturns, IValuesHandler, ISecurityInputs
{
public double Execute(ISecurity source, int barNum, double sum)
{
// берем дату текущего бара
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)
{
    for (int i = 0; i <= list.Length; i++)
    {
        sum += list[i].Profit();
    }
    return sum;
}
return 0;
}
    }
}


Сразу говорю, я не программист smile


Отредактировано Ti_ru (Sat Apr 09 2011 10:57 AM)