To Craft: я написал так в начале функции Execute:
ISecurityRt sourceRt = source as ISecurityRt;

Ну и, соответственно, потом:
Code:
TSLab.DataSource.OrderType fall = TSLab.DataSource.OrderType.Fall;
buy = true;
sourceRt.NewOrder(fall, buy, myPrice, 1, "Long");


Может, что-то тут коряво. Нектодрон, поправьте, пожалуйста.

Появилось еще несколько вопросов. Оказывается, непросто писать скрипт без позиций...
Судя по форуму, это пытаются делать только 2-3 человека, остальные даже боятся приступать, т.к. нет документации. Давайте попробуем восполнить этот пробел!

Итак:
1. Не получается выбрать ордера с сортировкой. Делаю, как вы привели в примере:
var orders = sourceRt.Orders.OrderBy(ord => ord.Date);

Получаю:
System.Collections.Generic.IEnumerable<TSLab.Script.Realtime.IOrder>" не содержит определение для "OrderBy".

2. Как можно выбрать не все ордера, а только, например, по какому-то сигналу?
Кстати, поле Comment в ордере - соответствует string signal в команде NewOrder?

3. Как можно выяснить, что какой-то ордер на открытие позиции (например, типа Fall) мы уже закрыли на предыдущей итерации (например, ордером типа Growth)?
Как это происходит без NewOrder понятно, там остается открытой позиция, а тут позиции ведь как таковой нет.