Faits : A. Le 13 octobre 2015, A._, domiciliée à Mexico City, a déclaré appeler d'un jugement d'acquittement rendu le 21 août précédent par le Tribunal de police du canton de Genève. Le 9 novembre 2015, la Présidente de la Chambre pénale d'appel et de révision (ci-après: CPAR) a invité l'appelante à fournir 2'500 fr. de sûretés. Le 25 novembre 2015, A._ a demandé l'assistance judiciaire en faisant valoir qu'elle n'avait plus les moyens d'assumer ses frais de défense; elle ne disposait d'aucun revenu et c'était son fils qui subvenait à ses besoins en payant ses charges plus une somme de 1'176 fr. par mois. Le 14 janvier 2016, le Service de l'assistance juridique a rendu son rapport sur la situation financière de l'intéressée. Selon le jugement attaqué, l'appelante disposait entre 2004 et 2008 d'avoirs bancaires pour environ 3,5 millions de francs. En raison de la crise financière il ne restait à fin 2015 plus que 411'000 fr., cette somme étant toutefois bloquée en nantissement d'un prêt hypothécaire de son gendre. Son fils pourvoyait à ses besoins et était défendu depuis plusieurs années par le même avocat dans le cadre d'un procès civil, de sorte qu'il paraissait disposer d'importants moyens financiers. Il pouvait donc également assumer les coûts de la procédure d'appel. Par décision du 15 janvier 2016, se fondant sur les conclusions de ce rapport, la Présidente de la CPAR a maintenu la demande de sûretés et fixé un dernier délai au 25 janvier 2016 pour s'acquitter de cette somme. B. Par acte du 22 janvier 2016, A._ forme un recours en matière pénale assorti d'une demande d'effet suspensif et d'une requête d'assistance judiciaire. Elle conclut à l'annulation de la décision du 15 janvier 2016 et à l'octroi de l'assistance judiciaire tant pour l'avance des frais de procédure d'appel que pour les sûretés et la désignation d'un avocat d'office. Subsidiairement, elle demande le renvoi de la cause à l'autorité intimée pour nouvelle décision au sens des considérants. La Présidente de la CPAR conclut au rejet du recours.