Как правильно добавить сигналку (sig в коде ниже), чтобы ее значение учитывалось при отправке транзакций?
В текущем виде скрипт работать не хочет.
while stopped==false do
sig=1 --значение по умолчанию
if условие and sig==1 then
sig=2 --после транзакции изменяется на 2
отправка транзакции
elseif условие and flag==2 then
sig=1 --после транзакции меняется на исходную 1
отправка транзакции
end
end
Разница с моим кодом в том, что отправку транзакции я вынес из тела логического перехода. Внутри if — end только формируются флаги (у Вас sig):
if continueTrend == 0 then
if Bu == true then
if oFlag == 1 then
Bu = false
else
oFlag = 1
end
end
if Se == true then
if oFlag == 2 then
Se = false
else
oFlag = 2
end
end
end
Выполняемая задача: предотвратить повторные отправки ботом сигналов.
Bu — последний сигнал на покупку в общем массиве сигналов;
Se — последний сигнал на продажу в общем массиве сигналов.
Массив сигналов формируется при запуске скрипта и постоянно дополняется новыми сигналами.
Если Вы знакомы со скриптом прогрммирования в AmiBroker, то поймете идею функции ExRem.
Врач-бондиатОр, во-первых, как правильно заметил Cubigator,
«sig=1 --значение по умолчанию» надо вынести за цикл while.
Во-вторых, если транзакция в первом условии должна принимать sig=1, а транзакция во-втором условии должна принимать sig=2, то это и надо прописывать в условиях, кроме того, надо поменять местами операции присвоения и отправки транзакций, если есть желание менять значение сигналки именно после транзакций.
Как-то так:
sig=1 --значение по умолчанию
while stopped==false do
if условие and sig==1 then
отправка транзакции
sig=2 --после транзакции изменяется на 2
elseif условие and flag==2 and sig==2 then
отправка транзакции
sig=1 --после транзакции меняется на исходную 1
end
end
Производитель удобрений отчитался по МСФО за 2025 год Акрон (AKRN) ➡️ Инфо и показатели 🔶 Результаты за год — выручка: ₽237,6 млрд (+20% год к году); — EBITDA: ₽91,7 млрд...
Ставка падает, рубль слабеет — это новая экономическая реальность или временный эффект? Разбираем, что на самом деле происходит с бюджетом и почему курс валют обманчив. Пузырь в ИИ: кто окажется...
Акции RENI в списке ТОП-10 лучших дивидендных акций, по мнению УК ««ДОХОДЪ»
По сообщениям СМИ, акции Группы Ренессанс страхование (RENI) вошли в подборку Управляющей компании ««ДОХОДЪ» ТОП-10 лучших дивидендных акций с доходностью от 12% до 17,5% на ближайшие 12 месяцев....
X5 МСФО 2025 г. - капзатрат меньше, дивиденд больше?
Компания X5 опубликовала финансовые результаты за 2025 год. Выручка прибавила +18,8% до 4,6 трлн руб., в 4-м квартале рост на 14,9% до 1,24 трлн руб. Валовая прибыль за год выросла на +17,9%...
PositTrader,
В яндексе не было указано имя только фамилия! Если писали про кого то другого то это без ответственный подход Яндекса! Пишут ведь на главной странице… И часто даже с грамматическ...
Максим, У Сургута тоже нет долгов. А ПУ пофиг, он как спящий дед. Что-нибудь болтнет и рынок вниз пикирует. У него талант рушить рынок в отличии от трампа
Avatar,
АПРИ низколиквидный инструмент 23 млн торгов при росте в 8 %. Это прям вообще 2-3 эшелон.
Самолет укатали так как его не имеет смысла держать в портфеле. Он уже отработаный инструмент....
Правительственная комиссия по законопроектной деятельности одобрила законопроект, регулирующий обращение криптовалют в России Правительственная комиссия по законопроектной деятельности одобрила законо...
if continueTrend == 0 then
if Bu == true then
if oFlag == 1 then
Bu = false
else
oFlag = 1
end
end
if Se == true then
if oFlag == 2 then
Se = false
else
oFlag = 2
end
end
end
Выполняемая задача: предотвратить повторные отправки ботом сигналов.
Bu — последний сигнал на покупку в общем массиве сигналов;
Se — последний сигнал на продажу в общем массиве сигналов.
Массив сигналов формируется при запуске скрипта и постоянно дополняется новыми сигналами.
Если Вы знакомы со скриптом прогрммирования в AmiBroker, то поймете идею функции ExRem.
Врач-бондиатОр, во-первых, как правильно заметил Cubigator,
«sig=1 --значение по умолчанию» надо вынести за цикл while.
Во-вторых, если транзакция в первом условии должна принимать sig=1, а транзакция во-втором условии должна принимать sig=2, то это и надо прописывать в условиях, кроме того, надо поменять местами операции присвоения и отправки транзакций, если есть желание менять значение сигналки именно после транзакций.
Как-то так:
sig=1 --значение по умолчанию
while stopped==false do
if условие and sig==1 then
отправка транзакции
sig=2 --после транзакции изменяется на 2
elseif условие and flag==2 and sig==2 then
отправка транзакции
sig=1 --после транзакции меняется на исходную 1
end
end