Подскажите пожалуйста в даной транзакции нужно условия Спреда,если робот торгует Маркет Ордерами? local Transaction = { ["ACTION"] = "NEW_STOP_ORDER", -- Тип заявки ["TRANS_ID"] = tostring(trans_id), ["CLASSCODE"] = "SPBFUT", ["SECCODE"] = "SRH6 ", ["ACCOUNT"] = ACCOUNT, ["OPERATION"] = "B" ["QUANTITY"] = "1", -- Количество в лотах ["PRICE"] = price, -- Цена, по которой выставится заявка при срабатывании Стоп-Лосса (для рыночной заявки по акциям должна быть 0) ["STOPPRICE"] = stopprice, -- Цена Тэйк-Профита ["STOP_ORDER_KIND"] = "TAKE_PROFIT_AND_STOP_LIMIT_ORDER", -- Тип стоп-заявки ["EXPIRY_DATE"] = "TODAY", -- Срок действия стоп-заявки ("GTC" – до отмены,"TODAY" - до окончания текущей торговой сессии, Дата в формате "ГГММДД")
["SPREAD"] = tostring(100*SEC_PRICE_STEP), ["SPREAD_UNITS"] = "PRICE_UNITS", -- Единицы измерения защитного спрэда ("PRICE_UNITS" - шаг цены, или "PERCENTS" - проценты)
local Transaction = { ["ACTION"] = "NEW_STOP_ORDER", -- Тип заявки ["TRANS_ID"] = tostring(trans_id), ["CLASSCODE"] = "SPBFUT", ["SECCODE"] = "SRH6 ", ["ACCOUNT"] = ACCOUNT, ["OPERATION"] = "B" ["QUANTITY"] = "1", -- Количество в лотах ["PRICE"] = price, -- Цена, по которой выставится заявка при срабатывании Стоп-Лосса (для рыночной заявки по акциям должна быть 0) ["STOPPRICE"] = stopprice, -- Цена Тэйк-Профита ["STOP_ORDER_KIND"] = "TAKE_PROFIT_AND_STOP_LIMIT_ORDER", -- Тип стоп-заявки ["EXPIRY_DATE"] = "TODAY", -- Срок действия стоп-заявки ("GTC" – до отмены,"TODAY" - до окончания текущей торговой сессии, Дата в формате "ГГММДД")
Ну так я о томже,поясните зачем тогда в транзакцию вбивать спред?
Пользователь
Сообщений: Регистрация: 30.03.2015
17.02.2016 03:14:39
в данном случае спред относится к тейк профиту, как я понял. да, он нужен
Пользователь
Сообщений: Регистрация: 11.02.2016
17.02.2016 19:27:00
Цитата
Валентин написал: в данном случае спред относится к тейк профиту, как я понял. да, он нужен
зачем?
Пользователь
Сообщений: Регистрация: 11.02.2016
19.02.2016 10:49:03
В чом шибка стопа local Transaction = { ["ACTION"] = "NEW_STOP_ORDER", -- Тип заявки ["TRANS_ID"] = tostring(trans_id), ["CLASSCODE"] = "SPBFUT", ["SECCODE"] = "SRH6 ", ["ACCOUNT"] = "SPBFUT00963", ["OPERATION"] = "B" ["QUANTITY"] = "1", -- Количество в лотах ["PRICE"] = price, -- Цена, по которой выставится заявка при срабатывании Стоп-Лосса (для рыночной заявки по акциям должна быть 0) ["STOPPRICE"] = "10290", -- Цена Тэйк-Профита ["STOP_ORDER_KIND"] = "TAKE_PROFIT_AND_STOP_LIMIT_ORDER", -- Тип стоп-заявки ["EXPIRY_DATE"] = "TODAY", -- Срок действия стоп-заявки ("GTC" – до отмены,"TODAY" - до окончания текущей торговой сессии, Дата в формате "ГГММДД")
Вот в чом ошибка:lua:46: '}' expected (to close '{' at line 39) near '[' PriceStep = getParamEx('SPBFUT', 'RIH6' , 'SEC_PRICE_STEP').param_value Price = getParamEx('SPBFUT', 'RIH6', 'LAST').param_value PriceS = Price - 50 * PriceStep --маркет цена продажи t = {
Ребят помогите кому не сложно розобраться с тейком и стопом и я чтоб не делал все равно ошибка,код вверху
QUIK clients support
Сообщений: Регистрация: 27.01.2015
25.02.2016 06:09:17
Цитата
Андрей Мурга написал: Ребят помогите кому не сложно розобраться с тейком и стопом и я чтоб не делал все равно ошибка,код вверху
Добрый день.
Видим, что у Вас в транзакции не указан параметр OFFSET (Величина отступа от максимума (минимума) цены последней сделки) Рекомендуем ознакомиться с примерами подачи подобных транзакций. Раздел 6. Совместная работа с другими приложениями/Импорт транзакций/Формат .tri-файла с параметрами транзакций/Примеры строк, которые могут содержаться в файле
Пользователь
Сообщений: Регистрация: 30.03.2015
25.02.2016 06:47:35
lua:46: '}' expected (to close '{' at line 39) near '[' указан номер строки, и указана ошибка
Пользователь
Сообщений: Регистрация: 30.01.2015
25.02.2016 06:56:38
expected (to close '{' at line 39) near '[' в линии 39 отсутствует закрывающая скобка для '{} около '[' ------------------------------------------------------ это че Вы и жевать за меня будете? - АГА!!!
Пользователь
Сообщений: Регистрация: 11.02.2016
25.02.2016 10:14:16
а как правильно закрить?
Пользователь
Сообщений: Регистрация: 30.01.2015
25.02.2016 10:32:16
покажите 39 линию в тексте.
Пользователь
Сообщений: Регистрация: 11.02.2016
25.02.2016 10:34:42
Transaction = {
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
25.02.2016 10:38:33
Запятая пропущена: ["SPREAD"]= "20",
Надо делать так, как надо. А как не надо - делать не надо.
Пользователь
Сообщений: Регистрация: 30.01.2015
25.02.2016 10:39:38
["SPREAD"]= "20" нет запятой надо так ["SPREAD"]= "20",
Пользователь
Сообщений: Регистрация: 11.02.2016
25.02.2016 10:45:02
ошибка таже 39 и 46 строка
Пользователь
Сообщений: Регистрация: 30.01.2015
25.02.2016 10:50:11
ocal Transaction = { ["ACTION"] = "NEW_STOP_ORDER", -- Тип заявки ["TRANS_ID"] = tostring(trans_id), ["CLASSCODE"]="SPBFUT", ["SECCODE"]="SRH6 ", ["ACCOUNT"]="SPBFUT011Ib ", ["OPERATION"]="B", ["QUANTITY"]= "1", ["PRICE"]= tostring(PriceS), ["STOPPRICE"] = tostring(stopprice), -- Цена Тэйк-Профита ["STOP_ORDER_KIND"]= "TAKE_PROFIT_AND_STOP_LIMIT_ORDER", -- Тип стоп-заявки ["EXPIRY_DATE"]= "TODAY", ["SPREAD"]= "20", ["STOPPRICE2"]= tostring(stopprice2), -- Цена Стоп-Лосса ["IS_ACTIVE_IN_TIME"]= "NO" } sendTransaction(Transaction); -------------------------------------------------------- если самому живать лень, то ы сразу пишите и строки . где 46 строка?
attempt to perform arithmetic on global 'SEC_PRICE_STEP' (a nil value)
Пользователь
Сообщений: Регистрация: 11.02.2016
25.02.2016 11:40:08
Проверил месседжом там всьо работает
Пользователь
Сообщений: Регистрация: 30.01.2015
26.02.2016 14:15:43
у Вас нет присвоения значения переменной SEC_PRICE_STEP ---------------------- "Это у Вас не заливная рыба"
Пользователь
Сообщений: Регистрация: 11.02.2016
26.02.2016 19:04:06
Не указаны единицы измерения защитного интервала take profit стоп-заявки.В скрипте они есть почму же он их не видит? SEC_PRICE_STEP = getParamEx('SPBFUT', 'RIH6' , 'SEC_PRICE_STEP').param_value STOP_LOSS=3; TAKE_PROFIT=3; stopprice= tostring(PriceS - TAKE_PROFIT*SEC_PRICE_STEP); stopprice2= tostring(PriceS + STOP_LOSS*SEC_PRICE_STEP);
я поставил стоп на 30п а заявка виставилась больше чем на 500п почему
Пользователь
Сообщений: Регистрация: 30.01.2015
26.02.2016 20:06:06
почитайте в документации по квику раздел 5 пункт Условные(стоп)-заявки Типы заявок 4.Тэйк-профит и стоп-лимит
Пользователь
Сообщений: Регистрация: 11.02.2016
26.02.2016 20:27:49
прочитал ну так оступ=10 и тогда должна виставиться заявка на 30п тоесть от цени входа на 40п,ну никак на 500
Пользователь
Сообщений: Регистрация: 30.01.2015
27.02.2016 13:28:42
теперь напишите , как Вы понимаете срабатывание стопа на каком-либо числовом примере, при этом укажите о чем Вы говорите - о стоп-лимите или тэйк-профите.
Пользователь
Сообщений: Регистрация: 11.02.2016
01.03.2016 19:29:38
Здравствуйте,у меня опять проблема на этот рас с проскальзиваныем цены,заявка активируется но цена уходит,заявка не исполнена,Подскажите что сделать чтоб не проскальзивало,вот скрипт PriceStep = getParamEx('SPBFUT', 'RIH6' , 'SEC_PRICE_STEP').param_value Price = getParamEx('SPBFUT', 'RIH6', 'LAST').param_value PriceS = Price - 50 * PriceStep --маркет цена продажи t = {
Проблема в том, что Вы не знаете как работают стоп и тэйк. Поэтому сделайте сначала числовой пример Если хотите комментарий, то расскажите его на форуме. Когда станет понятно с исполнением стопов, тогда поймете, что то, что Вы получаете - это нормально, а то, о чем Вы мечтаете, это не реально.
Пользователь
Сообщений: Регистрация: 11.02.2016
01.03.2016 20:24:25
О чом же я таком нереальном мечтаю,если вы о стопе 1п,то я его вбил для того чтоб быстрее понять работу скрипта