Probably because you're sending "plot" inside the asset loop.

This works, though.
Code:
// plot price series for each asset in a separate chart 

function run()
{
    set(PLOTNOW);

    BarPeriod = 1440;	
    NumYears = 1;

    vars Price[3];
    int N=0;
    string names[3];
    while(asset(loop("AUD/USD","EUR/USD","GBP/USD"))) 
    {	
        names[N] = Asset;
        Price[N] = series(price());	
        N++;	
    }

    for(N=0; N<3; N++)
    {
        plot(strf("price_%s",names[N]), Price[N], NEW, BLACK);
    }

}