Стратегія як правила, не код: прибутковий трейдинг — це управління позиціями, а не вхід
Прибутковий трейдинг залежить від управління позицією більше, ніж від сигналів входу. Veskald дозволяє створювати життєвий цикл угоди як редаговані правила замість коду, забезпечуючи швидке тестування виходів, стопів та налаштувань ризику.
Стратегія як набір правил, а не код: прибуток залежить від управління позицією, а не від входу
Щоб торгувати в плюс, важливіше не вдало увійти в ринок, а грамотно управляти позицією. Вхід лише задає напрямок. Усе решта — де стояти стоп, коли фіксувати частину прибутку, коли пересувати в беззбиток, коли визнати угоду збитковою — визначає, скільки ви заробите і, що важливіше, скільки втратите, якщо щось піде не так.
Саме тому в Veskald стратегія — це вся угода повністю, а не просто сигнал: кожне рішення від моменту виконання умов до закриття позиції. І саме тому стратегія тут — це набір правил, а не програма. Угода з такою кількістю рішень має бути чимось, що можна змінити й протестувати за лічені хвилини, інакше ви ніколи не перевірите більше ніж одну її версію.
Два типи інструментів і простір між ними
Інструменти для трейдингу бувають двох видів.
Перший — це код. Серйозні рушії, чесні щодо витрат, якщо правильно їх налаштувати, де кожна стратегія — це скрипт. Щоб перевірити варіацію, ви редагуєте код і сподіваєтесь, що нічого не зламали. ШІ прискорив написання, але баги нікуди не зникли — вони просто перестали виглядати як баги. Lookahead в індикаторі, перевірка стопа до входу на тій самій свічці, зсув часового поясу в даних: цифра з'являється, але вона хибна, і крива еквіті цього не покаже. Замість того щоб писати код, тепер доводиться сліпо довіряти йому.
Другий — це налаштування. Сервіси ботів і конструктори правил дозволяють зібрати стратегію без коду. Коли ми починали розробку, жоден з них не йшов далі правила входу зі стопом і ціллю. Деякі наздогнали — trailing stop, часткові виходи, закриття за індикатором. Але що досі відрізняє їх від інструменту для досліджень, так це те, що під капотом: test, який не рахує funding, sizing чи slippage так, як це робить біржа, неможливість побачити, як пораховано угоду, і неможливість порівняти дві версії управління однією угодою й подивитися, яка виживе out-of-sample.
Коли ми починали, між цими двома варіантами була порожнеча. Саме для цього створили Veskald: стратегія як повна конфігурація — вхід, ризик, виходи, усе — протестована рушієм, який рахує те, що реально візьме біржа, і змінюється без втручання в код.
Що містить стратегія тут
Уявіть це як послідовність рішень, через які проходить позиція. Кожне рішення — частина стратегії, і кожне — правило, яке ви прописуєте.
Коли входити. Умови на кількох таймфреймах, від 15хв до 1д — графік 4години задає напрямок, 1 година фільтрує, 15 хвилин дає тригер. Індикатори та свічкові патерни, поєднані групами AND / OR будь-якої глибини. У конструктор закладено просте правило: вхід — це подія, перетин чи пробій, а не стан. Стан — це фільтр.
Коли не входити. Правила пропуску — умови, що блокують вхід, навіть якщо умови для входу виконані. Не входити, якщо є дивергенція RSI проти угоди. Не входити, коли денна волатильність у нижній третині. Не входити в азійську сесію або взагалі поза сесіями. Майже кожен конструктор дає вам IF; майже жоден не дає IF NOT, тож «не входити на дивергенції» навіть не можна записати. Угоди, які ви не здійснили, — частина результату, і правило пропуску часто робить для стратегії більше, ніж будь-яка зміна входу.
Початковий ризик. Три види стопу: відсоток від входу, за найближчим максимумом чи мінімумом останніх N свічок, або за індикатором — ATR, Parabolic SAR, Supertrend, EMA. Захисний коридор задає мінімальну та максимальну відстань у відсотках, щоб стоп не опинився десь в абсурдному місці. Розмір позиції та плече виставляються так, щоб ціна ліквідації була за стопом із запасом — рушіє дотримується власної таблиці маржі біржі для цього.
Фіксація прибутку частинами. Будьяка кількість рівнів тейк-профіту, кожен зі своєю часткою позиції та власним тригером — кратність ризику або індикатор на обраному таймфреймі. Із закриттям кожної частини обсяг стопа зменшується відповідно.
Фіксація беззбитку. Переведення в беззбиток на обраному R або за сигналом індикатора, розраховане з урахуванням обох комісій, щоб «нуль» справді був нулем після fees.
Супровід руху. Trailing stop, який стартує одразу або лише коли угода досягає обраного R. Він працює так само, як стоп: відсоток від ціни, найближчий максимум чи мінімум останніх N свічок або індикатор — з власною мінімальною та максимальною відстанню.
Достроковий вихід. Два незалежні правила, одне або обидва: за часом — угода не досягла першої цілі R за N свічок, закрити її — та за індикатором на будь-якому таймфреймі. Це те, що відрізняє угоду, яка зайшла в глухий кут, від угоди, яка пішла проти вас. Налаштування стоп-і-ціль чекає на ціль і з'їдає три-чотири повних стопи шляхом; достроковий вихід закриває мертві угоди за частку стопа. Різниця помітніша в drawdown, ніж у прибутку.
Коригування після серії. Динамічний ризик, вимкнений за замовчуванням, на стратегію: до дев'яти правил, що підвищують або знижують ризик на угоду на обраний відсоток після серії з N результатів обраних типів — стоп-лос, тейк-профіт, беззбиток, trailing stop прибуток або збиток, достроковий вихід прибуток або збиток — або за індикатором, щоб розмір слідкував за волатильністю чи силою тренду замість останніх результатів. Плюс правило повернення до базового ризику; без нього ризик повертається до бази на наступній угоді.
Кожне з цих правил читається звичайною мовою, коли ви відкриваєте стратегію. Нічого не сховано в скрипті.
Що змінюється, коли варіація коштує хвилин
Ви тестуєте більше версій. Змінити цифру швидко і в скрипті. Повільно в коді — змінювати структуру угоди: вимкнути trailing stop і використати рівні тейк-профіту замість нього, додати достроковий вихід, потім прибрати його й додати беззбиток, потім повернути trailing stop лише після 1R. Кожне з цих дій — переписування логіки виходу і нове місце для багу. Тут кожне — це перемикач і перезапуск. Дюжина структурно різних версій однієї угоди за вечір — це нормальна сесія.
Ви швидше відсіюєте погані ідеї. Пошук переваги — це здебільшого відсів того, що не працює. Коли тест коштує тижня кодингу, ви захищаєте ідею через вже витрачений час. Коли це коштує хвилин, ви даєте їй померти й рухаєтесь далі.
Ви думаєте про угоду, а не про код. Кожна година, витрачена на завантажувач даних або баг у логіці стопа, — це година, не витрачена на головне питання: чи захоплює цей спосіб управління позицією те, що дає вхід, чи віддає назад. Журнал записує максимальне сприятливе та несприятливе відхилення кожної угоди саме для цього питання.
Машина теж може шукати. Конфігурація — це те, що оптимізатор може варіювати. Генетичний оптимізатор у Veskald перебирає тисячі комбінацій параметрів і оцінює їх за гладкістю кривої еквіті, а не максимальним прибутком — одна вдала угода нічого не важить.
Тест і реальність не можуть розійтися. Одна й та сама конфігурація й ті самі функції працюють в обох випадках. Одна модельована відмінність: на історії вхід виставляється на відкритті наступної свічки. Усе решта — стопи, розмір, плече, виходи — ідентичний код. Немає Python-файлу, що повільно розходиться з продакшеном.
Чим це не є
Це не генератор стратегій. Перебір тисяч комбінацій правил і збереження найкрасивішої — це машина для пошуку удачі, і Veskald цього не робить. Ідея ваша; платформа робить побудову угоди навколо неї дешевою.
Це не менш суворо, ніж код. Backtest рахує комісії, funding, slippage і розмір контракту біржі. Рушій відкритий на стратегію — ви бачите й можете змінити, як пораховано кожну угоду. «No code» описує, як ви пишете правила, а не наскільки ретельно їх тестують.
Це не спосіб уникнути думання. Угода, якій нічого працювати, помирає на тесті out-of-sample, незалежно від того, наскільки добре нею управляють. Управління вирішує, скільки заробляє робоча ідея і скільки коштує ідея, що не працює; воно не створює перевагу з нічого.
Це не бібліотека готових стратегій для запуску. Є публічна бібліотека шаблонів, заповнена нашим дослідницьким агентом, і кожен шаблон — це відкрита логіка — ви можете прочитати кожне правило і змінити його. Це точка старту для тесту на ваших парах і витратах, а не сигнал для слідування.
Це не місце для вашого коду всередині стратегії. Правила мають залишатися читабельними та тестованими, тож немає слоту для скрипта і немає ML-моделі між умовами та сигналом — це єдине чесне обмеження «правила, а не код». Що ви робите після сигналу, на своєму боці, — ваше: фільтр, модель, ваш власний виконавець.
Приклад
Скажімо, ви торгуєте пробоями вручну. Перша версія, записана на папері: вхід на закритті 4години вище 20-денного максимуму, фільтр тренду на 1д, стоп під останнім свінг-мінімумом, фіксована ціль на 3R.
Перший прогін: профіт-фактор 1.4, але drawdown жахливий — довгі серії повних стопів у бокові тижні. Угоди були не хибні, вони були мертві, і стратегія сиділа в них до стопа.
Додаємо достроковий вихід: закриття після 12 свічок, якщо угода не досягла 1R. Перезапуск. Drawdown навпіл, профіт-фактор рухається до 1.7. Кілька хвилин.
Замінюємо фіксовану ціль на третину на 1R, беззбиток і trailing stop на екстремумі 4години для решти. Перезапуск. Менше повних переможців, більше середніх, гладша крива. Пробуємо trailing stop відсотком замість. Гірше. Повертаємось до екстремуму.
Чотири версії, десять хвилин, і стратегія тепер інша і краща річ, ніж та, що була у вашій голові. Потім перевірка out-of-sample вирішує, чи є в цьому сенс. З кодом більшість так і залишається на першому прогоні.
Що спробувати
Візьміть угоду, яку ви вже здійснюєте вручну, і запишіть усе, що ви з нею робите — не тільки вхід. Де стоїть стоп і чому. Коли ви забираєте частковий прибуток. Коли переходите в беззбиток. Що змушує вас закритися достроково. Якщо дещо з цього «залежить від вигляду», варто знати ось що: правило, яке ви не можете записати, — це правило, якого ви насправді не дотримуєтесь.
Veskald — no-code платформа для створення, тестування й запуску стратегій на крипто-ф'ючерсах. Побудова стратегій, бектест, валідація та аналітика в одному інтерфейсі, а виконання — як вам зручно: сигнали для ручної торгівлі, бот на вашій машині або власний виконавець між ними.