Как правильно добавить сигналку (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
HYG1978, это какой-то бред конечно, возьмут они в долг 140 млрд в этом году и долг станет 420 млрд, а кэш весь раздадут и что будет потом с прибылью и свободным денежным потоком и рентабельностью? ...
Sergei, все просто, Россия приемник практически всего хорошего и не очень хорошего, отсюда должны ей, да и вообще Корея сама решает кому и что отдавать, остальные вопросы слишком обобщенные и размы...
Много лет работал в финансовой сфере, при обсуждении любой инвестидеи нужно иметь внятную аргументацию и тезисы. Если не согласен — иметь контраргументы. Иначе на условном инвесткомитете ты будешь выг...
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