Собственно вопрос. Как расчитать все возможные варианты взаимодействия? Имеется в виду внутрибиржевая арбитражная торговля от 3 валютных пар и до 5 скажем. Возможно ли написать некий алгоритм
Хотя конкретно в этом случае, двух циклов может и хватить:
currencies = ["usd", "btc", "rub", "gbp"]
while len(currencies) > 0:
a = currencies[0]
for b in currencies:
if a != b:
print "%s / %s" % (a, b)
currencies = currencies[1:]
Благодарю за комментарий! К сожалению далек от программирования, можно ли этими циклами воспользоваться в Excele (макросом)? Ну и конечная цель - подстановка значений по валютным парам (информация уже приходит через api). Если у вас есть возможность, расскажите пжста подробнее.
Это элементарный перебор сочетаний. Первый цикл перебирает список, а второй создает пары - перебирая тот же список, но от текущей позиции в первом цикле.