Стакан. Вопросы новичка.
Atom
20.04.2012
nuan


Извиняюсь сразу за глупые вопросы, но как и у многих начинающих, они возникают, а спросить не у кого.

в примере Sample , создаю новую форму, далее в ней код:
Код
namespace Sample
{
	using System;
	using System.Collections.ObjectModel;
	using System.Linq;
	using System.Threading;
	using System.Windows;
	using System.Windows.Controls;

	using Ecng.Collections;
	using Ecng.Common;
	using Ecng.Xaml;

	using StockSharp.BusinessEntities;
	using StockSharp.Quik;
	using StockSharp.Algo;
	
	public partial class bot : Window
	{
		
		private static Security _lkoh;
		private static MarketDepth _depth;
		public bot()
		{
			
			
			InitializeComponent();
			_lkoh.Code="LKOH";
			MainWindow.Instance.Trader.RegisterQuotes(_lkoh);
			_depth=MainWindow.Instance.Trader.GetMarketDepth(_lkoh);
			st.Content=_depth.Asks[0].Price.ToString();
		}
		public ObservableCollection<Security> Securities { get; private set; }
	}
}

Соответственно после вызова окна ругается. Почему, понять не могу.

Теги:


Спасибо:


< 1 2 3 
nuan

Фотография
Дата: 24.04.2012
Ответить


Спасибо за ответ, а как мне например получить цену третьего бида ?)
Спасибо:

vader

Фотография
Дата: 24.04.2012
Ответить


Допустим так
decimal aa = _marketDepth.Bids[2].Price;

_marketDepth - это объект MarketDepth,
получить его можно таким образом - _marketDepth = _security.Trader.GetMarketDepth(_security);
ПОлучать каждый раз его не надо, он будет обновлятся автоматически.
Только запустите предварительно получение стакана.
Спасибо:

nuan

Фотография
Дата: 24.04.2012
Ответить


vader можете сделать пример?
Спасибо:

OvcharenkoVI

Фотография
Дата: 24.04.2012
Ответить


Вроде все вполне очевидно )

В методе OnStarting стратегии делаете

md = Trader.GetMarketDepth(Security);

а потом уже в теле стратегии запрашивайте все что угодно )

Дока для кого?
Спасибо:

nuan

Фотография
Дата: 24.04.2012
Ответить


фуф разобрался... ) все оказалось проще. Спасибо огромное :) просто с Си быстро перейти на C# , да еще и с незнакомым API трудно )
Спасибо:

nuan

Фотография
Дата: 25.04.2012
Ответить


еще пара вопросов. я слышал, что чтобы на ММВБ выставить заявку, нужно сделать что-то особенное.
var order = new Order
{
Type = OrderTypes.Market,
Security = Security,
Portfolio = Portfolio,
Volume = Volume,
Direction = OrderDirections.Buy,
};

Trader.RegisterOrder(order);

ошибку не пишет, но ордер не выставляет.
Спасибо:

vader

Фотография
Дата: 28.04.2012
Ответить


Добавьте
Trader = this.Trader,

А у вас заявки на FORTS отправлялись?
Спасибо:
< 1 2 3 

Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy