Given:
market_data =
[
%{
asset: "3QvxP6YFBKpWJSMAfYtL8Niv8KmmKsnpb9uQwQpg8QN2",
last_price: 0.1249534,
priced_in: "WAVES",
volume: 13793.6013752778
},
%{
asset: "3QvxP6YFBKpWJSMAfYtL8Niv8KmmKsnpb9uQwQpg8QN2",
last_price: 1.626e-5,
priced_in: "8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS",
volume: 10311.7855749146
},
%{
asset: "474jTeYx2r2Va35794tCScAXWJG9hU2HcgxzMowaZUnu",
last_price: 189.658785,
priced_in: "DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p",
volume: 52373.8805236538
},
%{
asset: "474jTeYx2r2Va35794tCScAXWJG9hU2HcgxzMowaZUnu",
last_price: 186.06,
priced_in: "WAVES",
volume: 24023.1442492862
},
%{
asset: "474jTeYx2r2Va35794tCScAXWJG9hU2HcgxzMowaZUnu",
last_price: 0.02497085,
priced_in: "8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS",
volume: 8690.02335386836
},
%{
asset: "4LHHvYGNKJUg5hj65aGD5vgScvCBmLpdRFtjokvCjSL8",
last_price: 0.08150997,
priced_in: "WAVES",
volume: 40979.8114711376
},
%{
asset: "4LHHvYGNKJUg5hj65aGD5vgScvCBmLpdRFtjokvCjSL8",
last_price: 1.097e-5,
priced_in: "8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS",
volume: 252.945468613465
},
%{
asset: "4LHHvYGNKJUg5hj65aGD5vgScvCBmLpdRFtjokvCjSL8",
last_price: 0.08329,
priced_in: "DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p",
volume: 201.247929171753
},
%{
asset: "5WvPKSJXzVE2orvbkJ8wsQmmQKqTv9sGBPksV4adViw3",
last_price: 0.00808268,
priced_in: "8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS",
volume: 3248.6225669422
},
%{
asset: "5WvPKSJXzVE2orvbkJ8wsQmmQKqTv9sGBPksV4adViw3",
last_price: 60.20503371,
priced_in: "WAVES",
volume: 516.180493091221
},
%{
asset: "7Z5peMVTuyEesJcYn7B6DDtV8oqKAFueBA52vPuf59rh",
last_price: 0.91104345,
priced_in: "WAVES",
volume: 26300.1502283905
},
%{
asset: "7Z5peMVTuyEesJcYn7B6DDtV8oqKAFueBA52vPuf59rh",
last_price: 1.2554e-4,
priced_in: "8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS",
volume: 577.404317777729
},
%{
asset: "8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS",
last_price: 7532.54,
priced_in: "DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p",
volume: 163617.091159899
},
%{
asset: "8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS",
last_price: 8250,
priced_in: "34N9YcEETLWn93qYQ64EsP1x89tSruJU44RrEMSXXEPJ",
volume: 1489.58529413729
},
%{
asset: "Bwn3tDxj1rqqFGsnEy7Z829aj8Gs2UVQA7yktaJ6auHN",
last_price: 7.1e-7,
priced_in: "8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS",
volume: 1259.50422417225
},
%{
asset: "Bwn3tDxj1rqqFGsnEy7Z829aj8Gs2UVQA7yktaJ6auHN",
last_price: 0.00430558,
priced_in: "WAVES",
volume: 290.292294688471
},
%{
asset: "DHgwrRvVyqJsepd32YbBqUeDH4GJ1N984X8QoekjgH8J",
last_price: 300000000005,
priced_in: "7b4tRbsy8zNDW35gW9DETdRU5yaNoFGm2SvmwRuCns3f",
volume: 447641.500005591
},
%{
asset: "DHgwrRvVyqJsepd32YbBqUeDH4GJ1N984X8QoekjgH8J",
last_price: 0.05229596,
priced_in: "WAVES",
volume: 14287.8709376739
},
%{
asset: "DHgwrRvVyqJsepd32YbBqUeDH4GJ1N984X8QoekjgH8J",
last_price: 0.05294568,
priced_in: "DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p",
volume: 13348.2393706553
},
%{
asset: "DHgwrRvVyqJsepd32YbBqUeDH4GJ1N984X8QoekjgH8J",
last_price: 7.94e-6,
priced_in: "8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS",
volume: 10824.4211299108
},
%{
asset: "EYz8Zvs62D4d7F5ZgXHCWuzuFaZg63FYnfVQrTWQoLSK",
last_price: 7.9e-5,
priced_in: "8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS",
volume: 1666.02995108187
},
%{
asset: "EYz8Zvs62D4d7F5ZgXHCWuzuFaZg63FYnfVQrTWQoLSK",
last_price: 0.57,
priced_in: "WAVES",
volume: 1582.6257
},
%{
asset: "HZk1mbfuJpmxU1Fs4AX5MWLVYtctsNcg6e2C6VKqK8zk",
last_price: 0.00594059,
priced_in: "8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS",
volume: 4020.64881215575
},
%{
asset: "HZk1mbfuJpmxU1Fs4AX5MWLVYtctsNcg6e2C6VKqK8zk",
last_price: 43.9669216,
priced_in: "WAVES",
volume: 2384.30279291976
},
%{
asset: "WAVES",
last_price: 1.010899,
priced_in: "DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p",
volume: 383661.118208469
},
%{
asset: "WAVES",
last_price: 1.3345e-4,
priced_in: "8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS",
volume: 51539.1607843401
},
%{
asset: "WAVES",
last_price: 1.0467,
priced_in: "34N9YcEETLWn93qYQ64EsP1x89tSruJU44RrEMSXXEPJ",
volume: 705.83415129
}
]
Code:
def conversions do
market_data
|> Enum.map(fn map -> if Enum.member?(map.priced_in, "8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS") do
%{
asset: map.asset,
btc_price: map.last_price
}
else
%{
asset: map.asset,
price: map.last_price,
priced_in: map.priced_in,
asset_to_btc_rate: asset_to_btc_rate(map.priced_in),
btc_price: map.last_price * asset_to_btc_rate(map.priced_in)
}
end
end)
end
Error: ** (Protocol.UndefinedError) protocol Enumerable not implemented for "WAVES" of type BitString. This protocol is implemented for the following type(s): Ecto.Adapters.SQL.Stream, Postgrex.Stream, DBConnection.PrepareStream, DBConnection.Stream, HashSet, Map, Function, List, File.Stream, Date.Range, Range, HashDict, MapSet, Stream, IO.Stream, GenEvent.Stream
What’s going on here and how do I resolve this issue? Thanks for your patient help!