TransToQuik 1.0.0
dotnet add package TransToQuik --version 1.0.0
NuGet\Install-Package TransToQuik -Version 1.0.0
<PackageReference Include="TransToQuik" Version="1.0.0" />
<PackageVersion Include="TransToQuik" Version="1.0.0" />
<PackageReference Include="TransToQuik" />
paket add TransToQuik --version 1.0.0
#r "nuget: TransToQuik, 1.0.0"
#:package TransToQuik@1.0.0
#addin nuget:?package=TransToQuik&version=1.0.0
#tool nuget:?package=TransToQuik&version=1.0.0
TransToQuik
Типобезопасная .NET-библиотека для работы с TRANS2QUIK API терминала QUIK: подключение, отправка транзакций, подписка на заявки и сделки.
Важно: пакет NuGet содержит только управляемый код. Нативная библиотека
trans2quik.dllпоставляется вместе с QUIK и должна быть доступна в каталоге приложения. См. настройку QUIK.
Возможности
- Подключение к запущенному терминалу QUIK по пути к каталогу установки
- Синхронные и асинхронные транзакции (лимитные заявки, стоп-заявки, снятие заявок)
- Подписка на потоки заявок и сделок с типизированными моделями
- Строгая валидация параметров транзакций до отправки в QUIK
- Расширения для чтения дополнительных полей из callback-дескрипторов
Требования
| Компонент | Версия |
|---|---|
| .NET | 9.0+ |
| ОС | Windows (x86/x64 — как у установленного QUIK) |
| QUIK | Установленный терминал с включёнными внешними транзакциями |
trans2quik.dll |
Из каталога QUIK (см. docs/QUIK_SETUP.md) |
Торговый счёт (Account)
В заявках указывается поле Account — торговый счёт для транзакции (не логин QUIK и не «код клиента» демо).
Где посмотреть в терминале: Торговля → Заявка (при выборе ClassCode / SecCode), или в таблице заявок / разделе счетов. Подробнее — Где взять Account.
Установка
dotnet add package TransToQuik
Быстрый старт
using TransToQuik;
using TransToQuik.Enums;
using TransToQuik.Models.Transactions;
var client = QuikClientFactory.CreateClient();
var connect = client.Connect(@"C:\QUIK\");
if (!connect.Success)
{
throw new InvalidOperationException($"QUIK connect failed: {connect.ErrorKind}");
}
client.SubscribeOrders(b => b.Add("QJSIM", "VTBR"));
client.StartOrders(new MyOrderHandler());
var order = new QuikNewOrder
{
ClassCode = "QJSIM",
SecCode = "VTBR",
Account = "YOUR_ACCOUNT",
Operation = QuikOperation.Buy,
Quantity = 1,
Price = 100.0,
Type = QuikTypeOrder.Limit,
};
var result = await client.SendTransactionAsync(order);
Console.WriteLine($"Status: {result.ErrorKind}, OrderNum: {result.OrderNum}");
Полный рабочий пример — в проекте TransQuik.Example.
Ограничения процесса
- Один активный
QuikClientна процесс — все экземпляры делят подключение к QUIK,trans2quik.dllи таблицу ожиданий async-ответов (TRANS_ID). - Дополнительные поля заявок, сделок и ответов на транзакцию доступны через
Details/Reply(снимок в callback), а не через «живой» дескриптор QUIK. - Точность цены в транзакции: свойство
PriceScale(какscaleвgetSecurityInfo). См. QUIK_SETUP.md — формат PRICE.
Структура репозитория
TransToQuik/
├── TransToQuik/ # NuGet-библиотека
├── TransToQuik.Tests/ # Unit-тесты (Moq + xUnit)
├── TransQuik.Example/ # Консольный пример
├── docs/ # Документация по настройке QUIK
└── .github/workflows/ # CI и публикация в NuGet
Сборка из исходников
git clone https://github.com/ZylAlexander/TransToQuik.git
cd TransToQuik
# Скопируйте trans2quik.dll из каталога QUIK (для примера)
copy "%QUIK_PATH%\trans2quik.dll" libs\
dotnet build TransToQuik.sln
dotnet test TransToQuik.Tests/TransToQuik.Tests.csproj
Запуск примера:
cd TransQuik.Example
copy appsettings.Development.json.example appsettings.Development.json
# отредактируйте путь к QUIK и торговые параметры
dotnet run
Публикация NuGet
Релизы публикуются автоматически при создании тега v*.*.* (см. .github/workflows/release.yml).
Для публикации в nuget.org добавьте секрет репозитория NUGET_API_KEY.
Участие в разработке
См. CONTRIBUTING.md.
Лицензия
Код библиотеки распространяется по MIT.
trans2quik.dll и терминал QUIK — продукты АРКА Технологии; их использование регулируется их лицензией.
Отказ от ответственности
Проект не связан с АРКА Технологии и не является официальным SDK. Используйте на свой риск, особенно на реальных торговых счетах.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net9.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0 | 126 | 6/20/2026 |