У вас не стоит Flash Player
Page 10 of 17 < 1 2 ... 8 9 10 11 12 ... 16 17 >
Настройки
#7950 - Thu Jul 08 2010 12:08 AM Re: Насчёт создания скриптов и индикаторов [Re: Craft]
Craft Offline
enthusiast

Registered: Thu Jan 21 2010
Записи: 319
Nektodron, может подскажите - посыл верный или копать дальше - весь в смущениях.

Наверх
#7965 - Thu Jul 08 2010 10:28 AM Re: Насчёт создания скриптов и индикаторов [Re: Craft]
Nektodron Offline

Carpal Tunnel

Registered: Thu Oct 23 2008
Записи: 5492
var0[i-1] = Series.SMA(MyAtrNoSma, PerB)[i-1]

зачем в цикле каждый раз считать SMA для всего!
не проще ли написать выше:
var var0 = Series.SMA(MyAtrNoSma, PerB)

и дальше уже внтури торгового цикла обращаться по индексу.
То же самое:
Series.SMA(varb0, Usred) - надо заранее где-то сохранить.

Originally Posted By: Craft

P. S. При компиляции кода SharpDevelop пишет:
11:57:08.00[1]DEBUG:Start logging...
11:57:08.01[1]DEBUG:Show splash...
11:57:08.01[1]DEBUG:Using PNG in SplashScreen

Таких сообщений нет при компиляции других скриптов.


Это сообщения не от компиляции, а от запуска самого TSLab для отладки

Наверх
#8824 - Thu Jul 22 2010 06:16 PM Re: Насчёт создания скриптов и индикаторов [Re: Nektodron]
Craft Offline
enthusiast

Registered: Thu Jan 21 2010
Записи: 319
Nektodron, подскажите пожалуйста, как значение double преобразовать в IList<double> чтобы через mainPane.AddList его можно было отобразить на графике?
Бьюсь который день не могу разобраться.

Наверх
#8860 - Fri Jul 23 2010 12:48 PM Re: Насчёт создания скриптов и индикаторов [Re: Craft]
Nektodron Offline

Carpal Tunnel

Registered: Thu Oct 23 2008
Записи: 5492
В API недавно TSLab.Script.Helpers.ChartHelper

пользовать так:

var hlp = new ChartHelper(bars.Count);
...
hlp.SetValue(bar_num, value);

...
mainPane.AddList(hlp.ToArray(),...


значения можно выставлять не на каждом баре, хелпер их "протянет" до нового измения


Отредактировано Nektodron (Fri Jul 23 2010 12:49 PM)

Наверх
#11169 - Sat Aug 28 2010 03:12 PM Re: Насчёт создания скриптов и индикаторов [Re: Nektodron]
Craft Offline
enthusiast

Registered: Thu Jan 21 2010
Записи: 319
Nektodron, с RT, кажется, разобрался - опробую в понедельник, уж с чартом помогите.

Почему при использовании:
var hlp = new ChartHelper(sec.bars.Count);

Выдаёт ошибку:
Использование стандартного тип 'TSLab.Script.Helpers.ChartHelper<T>' требует аргументов типа '1' (CS0305)

Что не хватает, как исправить?

В справочнике API описание класса TSLab.Script.Helpers.ChartHelper не нашёл.

Наверх
#11189 - Sun Aug 29 2010 09:46 PM Re: Насчёт создания скриптов и индикаторов [Re: Craft]
Nektodron Offline

Carpal Tunnel

Registered: Thu Oct 23 2008
Записи: 5492
ChartHelper не описан, т.к. создавался для внутренних нужд. Опишу позже. Так как это класс шаблон, то нужно создавать так:
var hlp = new ChartHelper<double>(sec.bars.Count);

Наверх
#11682 - Fri Sep 03 2010 02:35 PM Re: Насчёт создания скриптов и индикаторов [Re: Nektodron]
fx_trader Offline
journeyman

Registered: Thu May 27 2010
Записи: 84
Добрый день.
Подскажите с чем связана ошибка "Имя типа или пространства имен 'ScriptEngine' отсутствует в пространстве имен 'TSLab' (пропущена ссылка на сборку?)" при запуске внешнего скрипта в TSLab?
Скрипт компилируется без ошибок, интерфейс IExternalScript имплементирован в классе:
using System;
using System.Collections.Generic;
using System.Linq;
using TSLab.Script;
using TSLab.Script.Handlers;
using TSLab.Script.Optimization;
using TSLab.Script.Helpers;
using TSLab.Script.Realtime;

namespace TSLab.Samples
{
public class Final : IExternalScript
{

Наверх
#11685 - Fri Sep 03 2010 02:44 PM Re: Насчёт создания скриптов и индикаторов [Re: fx_trader]
Nektodron Offline

Carpal Tunnel

Registered: Thu Oct 23 2008
Записи: 5492
Ну похоже в скрипте идет ссылка на классы, которые описаны в сборке ScriptEngine, которая не доступна скриптам. По приведенному куску кода диагностировать нельзя.

Наверх
#11750 - Fri Sep 03 2010 11:44 PM Re: Насчёт создания скриптов и индикаторов [Re: Nektodron]
fx_trader Offline
journeyman

Registered: Thu May 27 2010
Записи: 84
Уважаемые разработчики, не подскажите для API какой-нибудь метод определения сколько баров открыта позиция, некий аналог Position.EntryBar из WLD и BarsSinceEntry из Омеги?

Наверх
#11758 - Sat Sep 04 2010 11:48 AM Re: Насчёт создания скриптов и индикаторов [Re: fx_trader]
Nektodron Offline

Carpal Tunnel

Registered: Thu Oct 23 2008
Записи: 5492

Наверх
#11761 - Sat Sep 04 2010 12:20 PM Re: Насчёт создания скриптов и индикаторов [Re: Nektodron]
fx_trader Offline
journeyman

Registered: Thu May 27 2010
Записи: 84
Спасибо, а этот метод (TSLab.Script.IPosition.BarsHeld) можно применять к позициям открытым через TSLab.DataSource.OrderType?
Если вдруг - нет, можете что-нибудь подсказать для определения количество свечей существования позиции открытой через TSLab.DataSource.OrderType?

Наверх
#11763 - Sat Sep 04 2010 12:42 PM Re: Насчёт создания скриптов и индикаторов [Re: fx_trader]
Nektodron Offline

Carpal Tunnel

Registered: Thu Oct 23 2008
Записи: 5492
Конечно нельзя, находите свечу сравнивая дату свечи и заявки, и вычитаете номер той свечи из текущей

Наверх
#11766 - Sat Sep 04 2010 02:09 PM Re: Насчёт создания скриптов и индикаторов [Re: Nektodron]
fx_trader Offline
journeyman

Registered: Thu May 27 2010
Записи: 84
Спасибо, Nektodron.
Не поможете дооформить предложенный Вами алгоритм (очень логичный) в метод. У меня вырисовывается, как-то так, но из-за не знания всех тонкостей API, уверен, что это не рабочий вариант:

Code:
private double OrderBarsEntry(ISecurityRt rtSec, out double BarsEntry)			
{			
	BarsEntry = 0;		
	if (rtSec != null)		
	{					
		var orders = rtSec.Orders.OrderBy(ord => ord.Date);				
		foreach (var order in orders)				
		{				
			if (order.IsExecuted)			
			{
				// Возможно вместо Order.ExpirationDate необходимо использовать Order.Date?
				if (Order.ExpirationDate=sec.Bars.Date)
				{
					// Проблема - не могу понять, как определить номер бара исполнения заявки
					double OrderEntry = sec.Bars.Date;
				}
		
			}			
		}				
	}					
	BarsEntry = sec.Bars[i].Date - OrderEntry;					
}

Подскажите, что исправить.

Наверх
#11768 - Sat Sep 04 2010 02:55 PM Re: Насчёт создания скриптов и индикаторов [Re: fx_trader]
Nektodron Offline

Carpal Tunnel

Registered: Thu Oct 23 2008
Записи: 5492
я же вам написал, в цикле перебирать бары и сравнивать дату, как-только дата бара станет больше даты заявки (заявка может быть внутри бара), значит преидущий бар - бар, на котором исполнилась заявка

Наверх
#11965 - Mon Sep 06 2010 04:32 PM Re: Насчёт создания скриптов и индикаторов [Re: Nektodron]
fx_trader Offline
journeyman

Registered: Thu May 27 2010
Записи: 84
Nektodron, суть расчёта количества баров в открытой позиции понятна, пытаюсь:

BarEntry = order.Date < sec.Bars[i].Date ? i - order.Date : 0;
Ошибка:
Оператор "-" не может применяться к операндам типа "int"

Вопрос в том, как это правильно оформить?

Наверх
#11992 - Mon Sep 06 2010 05:48 PM Re: Насчёт создания скриптов и индикаторов [Re: fx_trader]
Nektodron Offline

Carpal Tunnel

Registered: Thu Oct 23 2008
Записи: 5492
а что вы хотите получить вычитая из номер свечи дату заявку?
должно быть типа такого:
var BarEntry = 0;
for(int k = 0; order.Date < sec.Bars[k].Date; k++)
{
BarEntry = k;
}

это именно поиск номера свечи

Наверх
#12211 - Wed Sep 08 2010 05:25 PM Re: Насчёт создания скриптов и индикаторов [Re: Nektodron]
fx_trader Offline
journeyman

Registered: Thu May 27 2010
Записи: 84
Который день бьюсь, всё что мог перепробовал, BarEntry = 0 (вывел это значение на график в отдельную панель чтобы можно было следить за его изменением) при открытой позиции.
В чём может быть причина, по смыслу всё логично?

В целом этот кусок скрипта оформил так:
Code:
var BarEntry = 0;
foreach (IOrder order in secRt.Orders)
for(int k = 0; order.Date < sec.Bars[k].Date; k++)
{
   BarEntry = k;
}

Наверх
#12213 - Wed Sep 08 2010 05:40 PM Re: Насчёт создания скриптов и индикаторов [Re: fx_trader]
Nektodron Offline

Carpal Tunnel

Registered: Thu Oct 23 2008
Записи: 5492
Ну получается, что у вас для ВСЕХ заявок одна переменная BarEntry, в которую попадает дата последней заявки. В чем смысл?

Наверх
#12216 - Wed Sep 08 2010 05:45 PM Re: Насчёт создания скриптов и индикаторов [Re: Nektodron]
fx_trader Offline
journeyman

Registered: Thu May 27 2010
Записи: 84
А как тогда foreach (IOrder order in secRt.Orders) оформить чтобы следил за исполненной заявкой в скрипте?
Без этой строки ругается на order.Date: Имя 'order' отсутствует в текущем контексте.

Наверх
#12221 - Wed Sep 08 2010 06:44 PM Re: Насчёт создания скриптов и индикаторов [Re: fx_trader]
Nektodron Offline

Carpal Tunnel

Registered: Thu Oct 23 2008
Записи: 5492
что значит следил за заявкой, заявок то много. там вся история всех заявок сделанных скриптом

Наверх
Page 10 of 17 < 1 2 ... 8 9 10 11 12 ... 16 17 >


Moderator:  ViL, sar