Блог им. Vasya_Cash

Робот для стопа и тейка

    • 04 февраля 2023, 21:02
    • |
    • Vasya
  • Еще
Друзья, добрый вечер.

Подскажите, пожалуйста, на просторах интернета есть смысл искать бесплатного робота для автоматизации стопов и тейков, или проще купить и забыть?
7 комментариев
ИИ в помощь. На каком языке программирования нужен робот?
avatar
FF_ATR, вероятно на Lua, робот нужен для квика.
Принцип прост, некое количество пунктов от позиции.
avatar
Vasya, На LUA не помогу. Вот если на python или pine.
avatar
Vasya,
Вот лови: 

— Function to calculate the simple moving average function sma(period, data) local sum = 0 for i = 1, period do sum = sum + data[i] end return sum / period end — Define the two moving average periods shortPeriod = 10 longPeriod = 50 — Define the stop loss and take profit levels stopLoss = -5 takeProfit = 10 — Initialize the moving average arrays shortMA = {} longMA = {} — Loop through the data to calculate the moving averages for i = 1, #data do — Calculate the short moving average if i >= shortPeriod then shortMA[i] = sma(shortPeriod, data[i — shortPeriod + 1, i]) end — Calculate the long moving average if i >= longPeriod then longMA[i] = sma(longPeriod, data[i — longPeriod + 1, i]) end — Check if a trade should be opened if shortMA[i] and longMA[i] and shortMA[i] > longMA[i] then — Buy the asset position = «long» — Set the stop loss and take profit levels stopLossPrice = data[i] * (1 + stopLoss / 100) takeProfitPrice = data[i] * (1 + takeProfit / 100) end — Check if the stop loss or take profit levels have been reached if position == «long» then if data[i] <= stopLossPrice then — Sell the asset to exit the trade position = nil end if data[i] >= takeProfitPrice then — Sell the asset to exit the trade position = nil end end end 
avatar
Vasya, 

— Function to calculate the simple moving average
function sma(period, data)
local sum = 0
for i = 1, period do
sum = sum + data[i]
end
return sum / period
end

— Define the two moving average periods
shortPeriod = 10
longPeriod = 50

— Define the stop loss and take profit levels
stopLoss = -5
takeProfit = 10

— Initialize the moving average arrays
shortMA = {}
longMA = {}

— Loop through the data to calculate the moving averages
for i = 1, #data do
— Calculate the short moving average
if i >= shortPeriod then
shortMA[i] = sma(shortPeriod, data[i — shortPeriod + 1, i])
end

— Calculate the long moving average
if i >= longPeriod then
longMA[i] = sma(longPeriod, data[i — longPeriod + 1, i])
end

— Check if a trade should be opened
if shortMA[i] and longMA[i] and shortMA[i] > longMA[i] then
— Buy the asset
position = «long»

— Set the stop loss and take profit levels
stopLossPrice = data[i] * (1 + stopLoss / 100)
takeProfitPrice = data[i] * (1 + takeProfit / 100)
end

— Check if the stop loss or take profit levels have been reached
if position == «long» then
if data[i] <= stopLossPrice then
— Sell the asset to exit the trade
position = nil
end

if data[i] >= takeProfitPrice then
— Sell the asset to exit the trade
position = nil
end
end
end

avatar
FF_ATR, воу, спасибо огромное, буду тестить!!!
avatar
 По какому принципу будут устанавливаться SL и TP? 
avatar

теги блога Vasya

....все тэги



UPDONW
Новый дизайн