I don't quite understand what you want to achieve.
Right now you are creating an array that looks like this [50,300]. And then you are looping 2 times, in each loop you create a instance of coin and then set its x position to id, id is 50 the first time and 300 the second time.
If you want to manually insert each coin position into the array you can do an 2d array:
var cpos = [ [50,300] , [70,150] ] # this array holds 2 other arrays, yo don't need the spaces
now for getting the value 50 I need to go to the first index of cpos:
print(cpos[0]) result: [50,300]
print(cpos[1]) result: [70,150]
to get the position of X then you need to get the index of that second array
print(cpos[0][0]) result: 50
print(cpos[0][1]) result: 300
print(cpos[1][0]) result: 70
print(cpos[1][1]) result: 150
if this is confusing you can instead store a Vector2 inside the array
var cpos = [Vector2(50,300), Vector2(70,150)]
then you could do:
for index in cpos.size():
var instancedCoin = coin.instance()
instancedCoin .position = cpos[index]
if you want more coins add more Vector2 to the cpos array